安装依赖包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
设置镜像源(阿里云)
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装Docker
sudo yum install docker-ce
Docker操作
# 开机自启
systemctl enable docker
# 启动docker
systemctl start docker
# 停止docker
systemctl stop docker
# 重启docker
systemctl restart docker
# 查看docker状态
systemctl status docker
查看版本
docker version
版本信息带有Client、Server说明docker启动成功
配置镜像加速器
vi /etc/docker/daemon.json
# 添加内容
{
"registry-mirrors": ["加速器地址"]
}
# 重新加载
systemctl daemon-reload
systemctl restart docker
镜像操作
# 拉取镜像
docker image pull hello-world
# 查看已有镜像
docker images
docker image ls
# 删除镜像
docker rmi -f 镜像名或镜像ID
-f:强制删除
# 构建镜像
docker build -t 镜像名 Dockerfile路径
-t:镜像的名字及标签
容器操作
# 创建容器
docker run [option] 镜像名 [向启动容器中传入的命令]
-i 表示以“交互模式”运行容器
-t 表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即 分配一个伪终端
--name 为创建的容器命名
-v 表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录,即宿主机目录:容器中目录),可以使用多个-v 做多个目录或文件映射
-d 在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i-t两个参数,创建后就会自动进去容器)
-p 表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p做多个端口映射
-e 为容器设置环境变量
--network=host 表示将主机的网络环境映射到容器中,容器的网络与主机相同
# 创建交互式容器(在容器内部exit退出时,容器停止)
docker run -it --name=mycentos centos /bin/bash
# 创建守护式容器(在容器内部exit退出时,容器不会停止)
docker run -dit --name=mycentos2 centos
# 进入运行中的容器
docker exec -it 容器名或容器ID 进入后执行的第一个命令
# 列出本机正在运行的容器
docker container ls
# 列出本机所有容器,包括已经终止运行的
docker container ls --all
# 停止在运行的容器
docker container stop 容器名或容器ID
# 启动停止的容器
docker container start 容器名或容器ID
# kill掉在运行的容器
docker container kill 容器名或容器ID
# 删除容器
docker container rm 容器名或容器ID
# 查看日志
docker logs 容器名或容器ID
-f:跟踪日志输出
--since:显示某个开始时间的所有日志
-t:显示时间戳
--tail:仅列出最新N条容器日志