各版本安装

  • 菜鸟教程
  • 官方教程

    第一种安装:yum

    1、卸载旧版本

    1. systemctl stop docker
    2. yum -y remove docker-ce
    3. #较旧的 Docker 版本称为 docker 或 docker-engine 。
    4. #如果已安装这些程序,请卸载它们以及相关的依赖项。
    5. yum remove docker \
    6. docker-client \
    7. docker-client-latest \
    8. docker-common \
    9. docker-latest \
    10. docker-latest-logrotate \
    11. docker-logrotate \
    12. docker-engine
    13. rm -rf /var/lib/docker

    2、安装 Docker Engine-Community

    2.1、设置仓库

    1. #安装所需的软件包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2。
    2. $ sudo yum install -y yum-utils device-mapper-persistent-data lvm2
    3. #官方仓库,速度可能较慢
    4. $ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    5. #阿里云仓库,速度块
    6. $ sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

    2.2、安装

    ```bash

    安装最新版本的 Docker Engine-Community 和 containerd,或者转到下一步安装特定版本:

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

1、列出并排序您存储库中可用的版本。此示例按版本号(从高到低)对结果进行排序。 $ yum list docker-ce —showduplicates | sort -r

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.1.ce-3.el7 docker-ce-stable docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable

yum install -y docker-ce-18.09.1 yum install -y docker-ce-18.06.0.ce 2、通过其完整的软件包名称安装特定版本,该软件包名称是软件包名称(docker-ce)加上版本字符串(第二列),从第一个冒号(:)一直到第一个连字符,并用连字符(-)分隔。例如:docker-ce-18.09.1。 $ sudo yum install docker-ce- docker-ce-cli- containerd.io

  1. <a name="fCSm4"></a>
  2. ## 3、启动
  3. ```bash
  4. systemctl start docker
  5. #通过运行 hello-world 映像来验证是否正确安装了 Docker Engine-Community 。
  6. docker run hello-world

第二种安装:使用tar包安装

下载tar包

1、解压

  1. tar -xvf docker-18.06.1-ce.tgz
  2. cp docker/* /usr/bin/
  3. dockerd &
  4. docker -v

2、加入systemctl管理

vim /usr/lib/systemd/system/docker.service

  1. [Unit]
  2. Description=Docker Application Container Engine
  3. Documentation=https://docs.docker.com
  4. After=network-online.target firewalld.service
  5. Wants=network-online.target
  6. [Service]
  7. Type=notify
  8. # the default is not to use systemd for cgroups because the delegate issues still
  9. # exists and systemd currently does not support the cgroup feature set required
  10. # for containers run by docker
  11. ExecStart=/usr/bin/dockerd
  12. ExecReload=/bin/kill -s HUP $MAINPID
  13. # Having non-zero Limit*s causes performance problems due to accounting overhead
  14. # in the kernel. We recommend using cgroups to do container-local accounting.
  15. LimitNOFILE=infinity
  16. LimitNPROC=infinity
  17. LimitCORE=infinity
  18. # Uncomment TasksMax if your systemd version supports it.
  19. # Only systemd 226 and above support this version.
  20. #TasksMax=infinity
  21. TimeoutStartSec=0
  22. # set delegate yes so that systemd does not reset the cgroups of docker containers
  23. Delegate=yes
  24. # kill only the docker process, not all processes in the cgroup
  25. KillMode=process
  26. # restart the docker process if it exits prematurely
  27. #Restart=on-failure
  28. #StartLimitBurst=3
  29. #StartLimitInterval=60s
  30. [Install]
  31. WantedBy=multi-user.target

3、启动

  1. systemctl start docker
  2. systemctl enable docker