centos7安装指定版本的docker
官方文档
- https://docs.docker.com/engine/install/centos/
1、卸载旧版本
$ sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2、设置rpm仓库
2.1 配置官方仓库
$ sudo yum install yum-utils device-mapper-persistent-data lvm2
$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
2.2 配置阿里云仓库
$ sudo yum install yum-utils device-mapper-persistent-data lvm2
$ yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3、安装指定版本 Docker Engine-Community
3.1 查看所有版本
$ yum list docker-ce --showduplicates | sort -r
3.2 安装指定版本
$ yum install docker-ce-20.10.8-3.el7 docker-ce-cli-20.10.8-3.el7 containerd.io docker-compose-plugin
4、配置镜像加速
$ mkdir -p /etc/docker
$ tee /etc/docker/daemon.json <<-'EOF'
{
"data-root": "/data/docker",
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "2"
},
"registry-mirrors": ["https://si4p9a1f.mirror.aliyuncs.com"],
"storage-driver": "overlay2",
"storage-opts":["overlay2.override_kernel_check=true"],
"live-restore": true
}
EOF
$ systemctl daemon-reload
$ systemctl restart docke
daemon.json文件配置说明
-
“data-root”: “/data/docker”:指定 Docker 存储所有运行时数据的根目录,包括镜像、容器、卷和网络等。默认情况下,这个目录位于 /var/lib/docker。
-
“exec-opts”: [“native.cgroupdriver=systemd”]:指定 Docker 使用 systemd 作为其 cgroup 驱动程序。cgroup (Control groups) 是 Linux 提供的一个特性,用于限制、记录和隔离进程组的资源使用(如 CPU、内存等)。使用 systemd 作为 cgroup 驱动程序有助于集成 Docker 和使用 systemd 的系统组件。
-
“log-driver”: “json-file”:将 Docker 容器的日志记录驱动程序设置为 json-file,这意味着容器的日志将以 JSON 格式写入文件。这是 Docker 的默认日志驱动程序。
-
“log-opts”: { “max-size”: “100m”, “max-file”: “2” }:设置容器日志文件的轮转策略。“max-size”: “100m” 指每个日志文件的最大大小为 100MB,达到该大小后日志文件会轮转。“max-file”: “2” 指最多保留 2 个轮转后的日志文件。
-
“insecure-registries”:列出了 Docker 可以通过 HTTP 而非 HTTPS 连接的不安全镜像仓库地址。在这个例子中,给出了几个私有仓库的地址,Docker 将不会验证这些仓库的 SSL 证书。如果配置为0.0.0.0/0,信任所有地址的所有私有仓库。
-
“registry-mirrors”: [“https://pqbap4ya.mirror.aliyuncs.com”]:设置 Docker 镜像拉取时使用的镜像仓库加速地址。这对于位于中国等地区的用户来说,可以提供更快的镜像下载速度
-
“storage-driver”: “overlay2”:指定 Docker 使用 overlay2 存储驱动,这是推荐的存储驱动,用于管理容器和镜像的分层文件系统。
-
“storage-opts”:[“overlay2.override_kernel_check=true”]:提供额外的存储驱动选项。在这里,它允许 overlay2 存储驱动忽略内核版本检查,这可能对于在不完全支持 overlay2 的旧内核版本上运行 Docker 是有用的。
-
“live-restore”: true:启用“实时恢复”功能,允许 Docker 守护进程在更新或重启时不终止运行中的容器。这有助于减少服务中断并提高系统的可用性。
5、验证docker
$ docker version