1. 卸载旧版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
2. 设置仓库
2.1 安装需要的包
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
2.2 设置仓库
因为国内访问不到docker官方镜像,所以配置阿里云的源
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3. 安装docker
sudo yum install docker-ce
sudo yum install docker-ce
4. 启动docker
sudo systemctl start docker
sudo docker version
sudo systemctl start docker
sudo docker version
5. 验证docker安装成功
sudo docker run hello-world
sudo docker run hello-world
如果报以下异常:
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
9bb5a5d4561a: Pulling fs layer
docker: error pulling image configuration: Get https://dseasb33srnrn.cloudfront.net/registry-v2/docker/registry/v2/blobs/sha256/e3/e38bc07ac18e
See 'docker run --help'.
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
9bb5a5d4561a: Pulling fs layer
docker: error pulling image configuration: Get https://dseasb33srnrn.cloudfront.net/registry-v2/docker/registry/v2/blobs/sha256/e3/e38bc07ac18e
See 'docker run --help'.
此错误也是网络问题,无法访问docker hub
配置阿里云的docker镜像库
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://xxx.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://xxx.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
6. 其他
默认安装完docker后,阿弥次执行docker都需要运行sudo命令,非常麻烦。以下步骤可以使得不用sudo来使用docker。
6.1 创建docker group
sudo groupadd docker
sudo groupadd docker
6.2 把当前用户加入该group
sudo gpasswd -a ${user} docker
sudo gpasswd -a ${user} docker
然后退出并重新登录
6-3 重启docker服务
sudo systemctl restart docker
sudo systemctl restart docker
然后关闭后当前会话,重新打开。