Docker安装

版本说明

OS : CentOS 7.8 x64

Linux内核 3.10.0-1127.10.1.el7.x86_64

Docker : 17.12.0-ce

Docker 要求 CentOS 系统的内核版本高于 3.10 ,通过 *uname -r* 命令查看你当前的内核版本。

卸载旧版本

较旧的 Docker 版本称为 docker 或 docker-engine 。如果已安装这些程序,请卸载它们以及相关的依赖项。

$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

安装软件包

安装所需的软件包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。

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

设置源地址

使用官方源地址(比较慢)

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

阿里云

$ sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

清华大学源

$ sudo yum-config-manager \
    --add-repo \
    https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo

查看存储库中docker版本

$ yum list docker-ce --showduplicates | sort -r

安装docker

这个命令是将软件包信息提前在本地缓存一份,用来提高搜索安装软件的速度

yum 会把下载的软件包和header存储在cache中而不自动删除。如果觉得占用磁盘空间,可以使用yum clean指令清除缓存。

$ sudo yum makecache fast

下载最新版本

$  sudo yum install docker-ce docker-ce-cli containerd.io

或简写成

$  sudo yum install docker-ce

效果一样 , 如下图

指定版本安装

$ sudo yum install docker-ce-17.12.0.ce

sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

说明: 低版本不会默认下载上图所述依赖

下载完成后启动

$ sudo systemctl start docker

加入开机启动

$ sudo systemctl enable docker

若此时查看docker状态(sudo systemctl status docker)如下

验证安装是否成功

$ docker version

img

至此Docker已成功安装

部署问题解决

因为之前已经安装过旧版本的docker,在安装的时候报错如下

Transaction check error:

file /usr/bin/docker from install of docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from package *docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64*

file /usr/bin/docker-containerd from install of docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from package *docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64*

file /usr/bin/docker-containerd-shim from install of docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from package *docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64*

file /usr/bin/dockerd from install of docker-ce-17.12.0.ce-1.el7.centos.x86_64 conflicts with file from package *docker-common-2:1.12.6-68.gitec8512b.el7.centos.x86_64*

解决办法

  • 获取服务器已安装docker

    $ yum list installed | grep docker
    
  • 卸载旧版本的包

    $ yum -y remove  docker-ce.x86_64
    
  • 再次安装docker

    $ sudo yum install docker-ce
    
  • 重新加载配置文件

    $ systemctl daemon-reload
    
  • 重启服务

    $ systemctl restart docker
    
  • 查看端口是否开启

    $ netstat -nptl
    
posted @ 2020-07-15 12:32  你在谁的风景里a  阅读(140)  评论(0编辑  收藏  举报