一、安装方法
1、Docker 要求 CentOS 的内核版本高于 3.10,查看系统是否符合要求。
uname -r

2、更新 yum
sudo yum update

3、卸载旧版本(如果之前有安装)。

  1. sudo yum remove docker \
  2. docker-client \
  3. docker-client-latest \
  4. docker-common \
  5. docker-latest \
  6. docker-latest-logrotate \
  7. docker-logrotate \
  8. docker-engine

4、安装需要的软件包, 需要 utils 的 yum-config-manager 功能,并设置yum源。

  1. sudo yum install -y yum-utils
  2. sudo yum-config-manager \
  3. --add-repo \
  4. https://download.docker.com/linux/centos/docker-ce.repo

5、查看所有可下载的Docker版本。
yum list docker-ce --showduplicates | sort -r
安装 Docker - 图1
6、安装最新稳定版本的Docker。
sudo yum install docker-ce docker-ce-cli containerd.io

7、不想安装最新版本,可以自己指定版本安装。
sudo yum install docker-ce-<这里填版本> docker-ce-cli-<这里填版本> containerd.io

8、启动Docker、并把Docker设为开机启动。
sudo systemctl start docker
sudo systemctl enable docker

9、验证安装是否成功,要有服务端和客户端都显示才表示正确启动。
$ docker version

二、基本使用
1、安装第一个容器(先 docker pull 拉取 image,再根据 image 创建 container) 。
docker run hello-world

2、查看所有镜像,下面二者都可以。
docker images
docker image list
安装 Docker - 图2

3、查看所有容器(不加-a是查看正在运行的容器),下面二者都可以。
docker ps -a
docker container ls -all
安装 Docker - 图3

4、删除image,+名字 或者id都可以删除。
docker rmi hello-world

5、开启、停止、删除 container。
docker start 容器 docker stop 容器 docker rm 容器

6、拉取镜像速度慢,可以使用国内地址。
vi /etc/docker/daemon.json { “registry-mirrors”: [“https://registry.docker-cn.com“] }

7、修改文件后,重载服务并重启docker
systemctl daemon-reload systemctl restart docker

8、查看docker日志
#查看指定时间后的日志,只显示最后100行:
docker logs -f -t —since=”2020-12-24” —tail=100 CONTAINER_ID

查看某时间段日志:
docker logs -t —since=”2020-12-24” —until “2020-12-25” CONTAINER_ID
#查看最近30分钟的日志:
docker logs —since 30m CONTAINER_ID

配置阿里镜像仓库
https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

1. 安装/升级Docker客户端

推荐安装1.10.0以上版本的Docker客户端,参考文档 docker-ce

2. 配置镜像加速器

针对Docker客户端版本大于 1.10.0 的用户,通过修改daemon配置文件 /etc/docker/daemon.json 来使用加速器

  1. sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF'
  2. {
  3. "registry-mirrors": ["https://lb1y0hlq.mirror.aliyuncs.com"]
  4. }
  5. EOF
  6. sudo systemctl daemon-reload sudo systemctl restart docker