centos8下安装docker
-
centos系统的内核必须高于3.10
命令:uname -r 查看centos内核情况 -
yum 包更新到最新
命令:yum update -
卸载旧版本(如果安装过旧版本的话,以前没有安装过的直接跳过此步)
命令:yum remove docker docker-common docker-selinux docker-engine -
安装需要的软件包
命令:yum install -y yum-utils device-mapper-persistent-data lvm2 -
设置yum源
a:默认仓库地址
命令:yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
b:aliyun 仓库地址
命令: yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -
安装最新版本的Docker
命令:yum install docker-ce docker-ce-cli containerd.io -
上述第6步可能会报containerd.io版本较低的错误,这是我们只需要将containerd.io的版本更新即可,我这里更新的是下面的版本: https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.13-3.2.el7.x86_64.rpm(没报错误则跳过此步)则可以安装containerd.io
命令:yum install -y https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.13-3.2.el7.x86_64.rpm
然后重复上述第6步骤。 -
启动Docker并设置开机启动
启动命令:systemctl start docker
开机自启命令:systemctl enable docker
启动/停止/状态命令:systemctl start/stop/status docker -
修改 Docker 服务配置
vim /usr/lib/systemd/system/docker.service
在ExecStart这里加入 不能有回车
-H unix:///var/run/docker.sock -H 0.0.0.0:2375
如:
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H unix:///var/run/docker.sock -H 0.0.0.0:2375
# -H unix:///var/run/docker.sock : 开启一个对外主机服务,使用 docker.sock 文件管理
# -H 0.0.0.0:2375 : 允许什么客户端 IP 访问当前服务,当前服务对外暴露的端口号是什么。2375是自定义的端口
然后在重新加载下
systemctl daemon-reload
systemctl restart docker
异常 x509
Error response from daemon: Get https://registry-1.docker.io/v2/: x509: certificate has expired or is not yet valid
解决方案:
- 同步时间
vim /etc/chrony.conf
在最后面加上
server 210.72.145.44 iburst
server ntp.aliyun.com iburst - 重新加载配置
systemctl restart chronyd.service - 时间同步
chronyc sources -v - 获取时间
date