一、下载安装前:
1. 更新yum:
yum update
2. 如有安装旧版本,先删除旧版本:
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
二、下载安装:
1.使用仓库进行安装 Docker Engine-Community设置官方仓库
yum-config-manager --add-repo https:
2.设置阿里云仓库
yum-config-manager --add-repo http:
3.安装所需软件
yum install -y yum-utils device-mapper-persistent-data lvm2
4.执行安装Docker命令
yum install docker-ce docker-ce-cli containerd.io
5.查看安装成功的Docker版本
docker -v
docker info
6.启动Docker
(1)开机自启
systemctl enable docker
(2)启动
systemctl start docker
三、基本命令
1.查看dockers版本信息
docker -v
docker version
2.显示 Docker 系统信息,包括镜像和容器数
docker info
3. 帮助命令
docker --help
四、镜像命令
1. 查看镜像列表
docker images
[options]
-a :列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层)
--digests :显示镜像的摘要信息
-f :显示满足条件的镜像
--format :指定返回值的模板文件
--no-trunc :显示完整的镜像信息
-q :只显示镜像ID。
例:docker images -a (列出本地所有的镜像)
docker images centos(列出本地镜像中REPOSITORY为centos的镜像列表)
2. 从Docker Hub查找镜像
docker search [OPTIONS] 镜像名字
[options]
-f <过滤条件>:列出收藏数不小于指定值的镜像。
例:docker search
3. 下载镜像
docker pull 镜像名称
例:docker pull nginx
4. 删除指定镜像
docker rmi 镜像id
docker rmi 镜像名称
五、容器命令
1.新建并启动容器
docker run [options] IMAGE [COMMAND] [ARG...]
[options]
--name="容器新名字": 为容器指定一个名称;
-d: 后台运行容器,并返回容器 ID,也即启动守护式容器;
-i:以交互模式运行容器,通常与 -t 同时使用;
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;
-P(大写): 随机端口映射;
-p: 指定端口映射,有以下四种格式:ip:hostPort:containerPort、ip::containerPort、hostPort:containerPort、containerPort
/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。
例:docker run -it centos /bin/bash(启动交互式容器,以交互模式启动一个容器,在容器内执行 /bin/bash 命令)
3. 列出当前所有正在运行的容器
docker ps [options]
[options]
-a :列出当前所有正在运行的容器+历史上运行过的
-l :显示最近创建的容器。
-n:显示最近n个创建的容器。
-q :静默模式,只显示容器编号。
--no-trunc :不截断输出。
例:docker ps -n 5(显示最近5个创建的容器)
4.退出容器
exit
Ctrl + P + Q
5.启动一个已经停止的容器
docker start 容器ID / 容器名
6.重启容器
docker restart 容器ID / 容器名
7.停止容器
docker stop 容器ID / 容器名
8.强制停止容器
docker kill 容器ID / 容器名
9.删除已经停止的容器
docker rm 容器ID / 容器名
一次性删除多个容器
- docker rm -f $(docker ps -a -q)
- docker ps -a -q | xargs docker rm
10.查看容器日志
docker log -f -t --tail 容器ID
[options]
-t 是加入时间戳
-f 跟随最新的日志打印
--tail 数字显示最后多少条
11.查看容器内运行的进程
docker top 容器ID
12.查看容器内部细节
docker inspect 容器ID
Last 可能遇到的问题
1. 删除镜像时报错:Error response from daemon: conflict: unable to delete 580c0e4e98b0 (must be forced) - image is being used by stopped container 224b241b1f31
(1)docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker stop
(2)docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker rm
(3)docker images|grep none|awk '{print $3 }'|xargs docker rmi + 镜像id
(4)docker rmi 镜像id