centos7 安装docker

通过 uname -r 命令查看你当前的内核版本

$ uname -r
3.10.0-1062.12.1.el7.x86_64

由于内核是 3.10 无法正常运行 18.06.x 及以上版本的 docker但可以运行18.03.1.ce
这句话待确认,因为我本地3.10.xxx的内核都可以装19.03.2

2、使用 root 权限登录 Centos。确保 yum 包更新到最新。

sudo yum update

3、卸载旧版本(如果安装过旧版本的话)

sudo yum remove docker  docker-common docker-selinux docker-engine

4、安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

5、设置yum源

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

6、可以查看所有仓库中所有docker版本,并选择特定版本安装

yum list docker-ce --showduplicates | sort -r
已加载插件:fastestmirror
已安装的软件包
可安装的软件包
 * updates: mirrors.bfsu.edu.cn
Loading mirror speeds from cached hostfile
 * extras: mirrors.bfsu.edu.cn
docker-ce.x86_64            3:19.03.8-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.7-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.7-3.el7                    @docker-ce-stable
docker-ce.x86_64            3:19.03.6-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.5-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.4-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.3-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.2-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.1-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.0-3.el7                    docker-ce-stable
docker-ce.x86_64            3:18.09.9-3.el7                    docker-ce-stable
docker-ce.x86_64            3:18.09.8-3.el7                    docker-ce-stable
docker-ce.x86_64            3:18.09.7-3.el7                    docker-ce-stable
docker-ce.x86_64            3:18.09.6-3.el7                    docker-ce-stable
docker-ce.x86_64            3:18.09.5-3.el7                    docker-ce-stable
docker-ce.x86_64            3:18.09.4-3.el7                    docker-ce-stable
docker-ce.x86_64            3:18.09.3-3.el7                    docker-ce-stable
docker-ce.x86_64            3:18.09.2-3.el7                    docker-ce-stable
docker-ce.x86_64            3:18.09.1-3.el7                    docker-ce-stable
docker-ce.x86_64            3:18.09.0-3.el7                    docker-ce-stable
docker-ce.x86_64            18.06.3.ce-3.el7                   docker-ce-stable
docker-ce.x86_64            18.06.2.ce-3.el7                   docker-ce-stable
docker-ce.x86_64            18.06.1.ce-3.el7                   docker-ce-stable
docker-ce.x86_64            18.06.0.ce-3.el7                   docker-ce-stable
docker-ce.x86_64            18.03.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            18.03.0.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.12.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.12.0.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.09.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.09.0.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.06.2.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.06.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.06.0.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.03.3.ce-1.el7                   docker-ce-stable
docker-ce.x86_64            17.03.2.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.03.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.03.0.ce-1.el7.centos            docker-ce-stable
 * base: mirrors.bfsu.edu.cn

如果这里没有找到18.03.1.ce-1.el7.centos,可以切换为阿里的镜像源:
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

7、安装docker
这里我们就安装指定版本

yum install docker-ce-18.03.1.ce-1.el7.centos

如果这步报以下错误

...
--> 解决依赖关系完成
错误:软件包:docker-ce-18.03.1.ce-1.el7.centos.x86_64 (docker-ce-stable)
          需要:container-selinux >= 2.9
错误:软件包:docker-ce-18.03.1.ce-1.el7.centos.x86_64 (docker-ce-stable)
          需要:pigz
 您可以尝试添加 --skip-broken 选项来解决该问题
 您可以尝试执行:rpm -Va --nofiles --nodigest

一般是缺少container-selinux。如果直接执行yum install container-selinux, 一般的yum源又找不到这个包需要安装epel源 才能yum安装container-selinux,所以需要按以下方式执行

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum install epel-release  #这句不执行也可以执行下一句
yum install container-selinux

然后在安装docker-ce就可以了。

8、启动并加入开机启动

$ sudo systemctl start docker
$ sudo systemctl enable docker

9、验证安装是否成功(有client和service两部分表示docker安装启动都成功了)

$ docker version

10、修改成国内镜像
docker默认镜像拉取地址为国外仓库下载速度较慢,则会报错“net/http: TLS handshake timeout”。

Pulling zookeeper (wurstmeister/zookeeper:)...
ERROR: Get https://registry-1.docker.io/v2/wurstmeister/zookeeper/manifests/latest: net/http: TLS handshake timeout

此时,只需要将拉取地址改为国内镜像仓库即可。
为了永久性保留更改,您可以修改 /etc/docker/daemon.json 文件(文件不存在则创建)并添加上 registry-mirrors 键值。
vim /etc/docker/daemon.json

{
  "registry-mirrors": ["https://registry.docker-cn.com"]
}

修改保存后重启 Docker 以使配置生效。

 systemctl restart  docker

参考

https://docs.docker.com/engine/install/centos/
https://www.jianshu.com/p/7d9ff93bc89e
https://blog.csdn.net/kai402458953/article/details/100026109

你可能感兴趣的:(centos7 安装docker)