Linux的docker基础知识

centOS7安装

shell 复制代码
yum install docker -y
systemctl start docker
systemctl enable docker

kali安装

shell 复制代码
# 添加docker的gpg密钥,签名用的
curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/gpg | sudo apt-key add -

# 添加docker的清华大学apt镜像源
echo 'deb https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/ buster stable' | sudo tee /etc/apt/sources.list.d/docker.list

# 更新apt缓存
apt update

# 安装docker
sudo apt-get install docker docker-compose -y
或
sudo apt-get install docker.io

# 安装完成后,docker就自启动了
systemctl status docker

# 查看docker版本
docker -v

docker换源

shell 复制代码
# 创建或修改 /etc/docker/daemon.json 文件
vim /ect/docker/daemon.json
# 添加配置
{
    "registry-mirrors" : [
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://cr.console.aliyun.com",
    "https://mirror.ccs.tencentyun.com"
  ]
}
# 使配置文件生效
systemctl daemon-reload
# 重启docker服务
systemctl restart docker.service
# 查看配置是否成功
docker info

docker使用

shell 复制代码
# 体验docker版nginx最新版
#-p 80:80 将客户端 80 端口映射到容器内部的 80 端口
# -d 设置容器在在后台一直运行
# --name nginx-test:容器名称
# rum 拉取并运行
docker rum --name nginx-test -d -p 80:80 nginx

# 客户端81端口 安装nginx1.16版本
 docker run -d -p 81:80 nginx:1.16

# 查看docker运行的服务
docker container ls

# 体验wordpress
-e 设置容器的参数
docker run --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
docker run -d ---link mysql:mysql -p 86:80 wordpress:5.6

docker镜像:安装了某些特定程序的文件,相当于压缩文件

docker容器:镜像运行后开辟的内存空间。相当于普通程序运行之后的进程。

docker镜像常用命令

docker search nginx # 搜索nginx镜像

docker search tomcat # 搜索tomcat 镜像

该指令只能搜索官方仓库的镜像。


docker images

查看本地镜像列表,本地有的镜像就不用去下载了,可以将本地镜像导出分享给别人。


docker pull

下载镜像,拉取

docker pull tomcat:latest # 拉取tomcat最新版,冒号后面可以指定版本。 不加冒号默认拉取最新版本。


docker rmi

删除镜像 rm表示要删除容器,rmi表示删镜像,镜像处于运行状态时是不能删除的,会报错。

docker rmi tomcat:latest


docker save

导出镜像(是一个压缩包)docker save 镜像名称:版本 -o 压缩包名

在任意目录下都可以操作,压缩后会放在当前目录中 直接ll就可以查看。

docker save nginx:1.16 -o docker.nginx1.16.tar.gz


docker load

导入镜像,会自动解压并导入到docker服务中

docker load -i docker_nginx1.6.tar.gz

docker容器相关操作

docker container ls

查看docker运行了哪些容器


docker stop CONTAINER ID 或者 NAMES (通过docker ps 或者 docker container ls查看)

停止容器运行

docker stop stoic_keller


docker rm -f docker ps -a -q # 删除所有容器 -q显示容器id,反引号中的指令优先执行


docker ps -a 查看所有的容器,包括启动和未启动的


docker start CONTAINER ID 或者 NAMES (通过docker ps -a 或者 docker container ls查看)


docker run 运行一个新的容器


docker restart CONTAINER ID 或者 NAMES (通过docker ps -a 或者 docker container ls查看) 重新启动容器


与容器交互

容器相当于一个微型的虚拟机,所以是可以进入的

docker exec -it 602987e9527d /bin/bash

602987e9527d:CONTAINER ID

/bin/bash: 开启shell窗口

执行该指令后可以进入的容器内,但是容器内好多指令是不能运行的。

相关推荐
努力努力再努力wz33 分钟前
【Linux网络系列】:JSON+HTTP,用C++手搓一个web计算器服务器!
java·linux·运维·服务器·c语言·数据结构·c++
物理与数学8 小时前
linux 内存分布
linux·linux内核
东城绝神9 小时前
《Linux运维总结:基于ARM64+X86_64架构使用docker-compose一键离线部署MySQL8.0.43 NDB Cluster容器版集群》
linux·运维·mysql·架构·高可用·ndb cluster
creator_Li9 小时前
即时通讯项目--(1)环境搭建
linux·运维·ubuntu
Mr'liu10 小时前
MongoDB 7.0 副本集高可用部署
linux·mongodb
文静小土豆11 小时前
Rocky Linux 二进制 安装K8S-1.35.0高可用集群
linux·运维·kubernetes
暮云星影11 小时前
二、linux系统 应用开发:整体Pipeline流程
linux·arm开发
weixin_4307509313 小时前
OpenMediaVault debian Linux安装配置企业私有网盘(三) 静态ip地址配置
linux·服务器·debian·nas·网络存储系统
4032407313 小时前
[Jetson/Ubuntu 22.04] 解决挂载 exFAT 硬盘报错 “unknown filesystem type“ 及只读权限问题的终极指南
linux·运维·ubuntu
Source.Liu13 小时前
【沟通协作软件】使用 Rufus 制作 Ubuntu 启动盘的详细过程
linux·ubuntu