CentOS7安装Docker

本文最后更新于1 分钟前,文中所描述的信息可能已发生改变。

说明

Docker分为社区版和企业版,功能方面社区版是足够使用了。

CentOS 7 安装docker 社区版

我这里默认使用的root权限登陆的,非root用户的话,需要切换到root,自己的服务器,就没必要单独搞个用户了。

1、前置要求:

Docker要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。通过 uname -r 命令查看你当前的内核版本

shell
[root@VM-16-4-centos ssh]# uname -r
3.10.0-1160.45.1.el7.x86_64

满足要求

2、更新yum,保证所有包最新状态

[root@VM-16-4-centos ssh]# yum update
Dependencies Resolved

==========================================================================================
 Package                                                                            Arch  
==========================================================================================
Installing:
 kernel                                                                             x86_64
 kernel-devel                                                                       x86_64
Updating:
 bash                                                                               x86_64
 bind-export-libs                                                                   x86_64
 bind-libs                                                                          x86_64
 bind-libs-lite                                                                     x86_64
 bind-license                                                                       noarch
 bind-utils                                                                         x86_64
 bpftool                                                                            x86_64
 centos-release                                                                     x86_64
 iscsi-initiator-utils                                                              x86_64
 iscsi-initiator-utils-iscsiuio                                                     x86_64
 kbd                                                                                x86_64
 kbd-legacy                                                                         noarch
 kbd-misc                                                                           noarch
 kernel-headers                                                                     x86_64
 kernel-tools                                                                       x86_64
 kernel-tools-libs                                                                  x86_64
 krb5-devel                                                                         x86_64
 krb5-libs                                                                          x86_64
 libkadm5                                                                           x86_64
 libsss_idmap                                                                       x86_64
 libsss_nss_idmap                                                                   x86_64
 nss                                                                                x86_64
 nss-sysinit                                                                        x86_64
 nss-tools                                                                          x86_64
 python-perf                                                                        x86_64
 rpm                                                                                x86_64
 rpm-build                                                                          x86_64
 rpm-build-libs                                                                     x86_64
 rpm-libs                                                                           x86_64
 rpm-python                                                                         x86_64
 sssd-client                                                                        x86_64

Transaction Summary
==========================================================================================
Install   2 Packages
Upgrade  31 Packages

Total download size: 122 M
Is this ok [y/d/N]: y

要更新的还蛮多的,这里直接选是,等待更新完毕。

3、卸载已经安装的docker(如果是重装,需要这一步)

[root@VM-16-4-centos ssh]# yum remove docker  docker-common docker-selinux docker-engine

4、安装必要的一些系统工具

[root@VM-16-4-centos ssh]# yum install -y yum-utils device-mapper-persistent-data lvm2

5、添加阿里云的软件源信息

[root@VM-16-4-centos ssh]# yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
Loaded plugins: fastestmirror, langpacks
adding repo from: https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
grabbing file https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
repo saved to /etc/yum.repos.d/docker-ce.repo
[root@VM-16-4-centos ssh]# sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo

[root@VM-16-4-centos ssh]# yum makecache fast   #生成yum本地缓存
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
docker-ce-stable                             
epel                                         
extras                                       
os                                           
updates                                      
(1/2): docker-ce-stable/7/x86_64/primary_db  
(2/2): docker-ce-stable/7/x86_64/updateinfo  
Metadata Cache Created
[root@VM-16-4-centos ssh]#

6、安装docker (

[root@VM-16-4-centos ssh]# yum -y install docker-ce

7、指定docker版本安装

yum list docker-ce.x86_64 --showduplicates | sort -r
#查找Docker-CE的版本:
[root@VM-16-4-centos ssh]# yum list docker-ce.x86_64 --showduplicates | sort -r
Loading mirror speeds from cached hostfile
Loaded plugins: fastestmirror, langpacks
Installed Packages
docker-ce.x86_64            3:20.10.9-3.el7                    docker-ce-stable
docker-ce.x86_64            3:20.10.8-3.el7                    docker-ce-stable
docker-ce.x86_64            3:20.10.7-3.el7                    docker-ce-stable
docker-ce.x86_64            3:20.10.6-3.el7                    docker-ce-stable
docker-ce.x86_64            3:20.10.5-3.el7                    docker-ce-stable
docker-ce.x86_64            3:20.10.4-3.el7                    docker-ce-stable
docker-ce.x86_64            3:20.10.3-3.el7                    docker-ce-stable
docker-ce.x86_64            3:20.10.2-3.el7                    docker-ce-stable
docker-ce.x86_64            3:20.10.1-3.el7                    docker-ce-stable
docker-ce.x86_64            3:20.10.12-3.el7                   docker-ce-stable
docker-ce.x86_64            3:20.10.12-3.el7                   @docker-ce-stable
docker-ce.x86_64            3:20.10.11-3.el7                   docker-ce-stable
docker-ce.x86_64            3:20.10.10-3.el7                   docker-ce-stable
docker-ce.x86_64            3:20.10.0-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.9-3.el7                    docker-ce-stable
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.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.15-3.el7                   docker-ce-stable
docker-ce.x86_64            3:19.03.14-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.13-3.el7                   docker-ce-stable
docker-ce.x86_64            3:19.03.12-3.el7                   docker-ce-stable
docker-ce.x86_64            3:19.03.11-3.el7                   docker-ce-stable
docker-ce.x86_64            3:19.03.10-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
Available Packages
#安装指定版本的Docker-CE: (VERSION例如上面的17.03.0.ce-1.el7.centos)
[root@VM-16-4-centos ssh]# yum -y install docker-ce-[VERSION]

8、启动docker 并设置开机自启

[root@VM-16-4-centos ssh]# systemctl enable docker
[root@VM-16-4-centos ssh]# systemctl start docker

9、查看docker运行状态,是否安装成功

[root@VM-16-4-centos ssh]# systemctl status docker
[root@VM-16-4-centos ssh]# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since Tue 2021-12-21 18:34:42 CST; 4min 35s ago
     Docs: https://docs.docker.com
 Main PID: 6823 (dockerd)
    Tasks: 8
   Memory: 32.2M
   CGroup: /system.slice/docker.service
           └─6823 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

Dec 21 18:34:42 VM-16-4-centos dockerd[6823]: time="2021-12-21T18:34:42.331096661+08:00" level=info msg="ccResolverWrapper: sending update to cc: {[{unix:///run/containerd/containerd.sock  <nil> 0 <nil>}] <nil> <nil>}" module=grpc
Dec 21 18:34:42 VM-16-4-centos dockerd[6823]: time="2021-12-21T18:34:42.331114846+08:00" level=info msg="ClientConn switching balancer to \"pick_first\"" module=grpc
Dec 21 18:34:42 VM-16-4-centos dockerd[6823]: time="2021-12-21T18:34:42.354454626+08:00" level=info msg="[graphdriver] using prior storage driver: overlay2"
Dec 21 18:34:42 VM-16-4-centos dockerd[6823]: time="2021-12-21T18:34:42.357225325+08:00" level=info msg="Loading containers: start."
Dec 21 18:34:42 VM-16-4-centos dockerd[6823]: time="2021-12-21T18:34:42.436268781+08:00" level=info msg="Default bridge (docker0) is assigned with an IP address 172.17.0.0/16. Daemon option --bip can be used to set a preferred IP address"
Dec 21 18:34:42 VM-16-4-centos dockerd[6823]: time="2021-12-21T18:34:42.470207710+08:00" level=info msg="Loading containers: done."
Dec 21 18:34:42 VM-16-4-centos dockerd[6823]: time="2021-12-21T18:34:42.496225366+08:00" level=info msg="Docker daemon" commit=459d0df graphdriver(s)=overlay2 version=20.10.12
Dec 21 18:34:42 VM-16-4-centos dockerd[6823]: time="2021-12-21T18:34:42.496280028+08:00" level=info msg="Daemon has completed initialization"
Dec 21 18:34:42 VM-16-4-centos systemd[1]: Started Docker Application Container Engine.
Dec 21 18:34:42 VM-16-4-centos dockerd[6823]: time="2021-12-21T18:34:42.511760185+08:00" level=info msg="API listen on /var/run/docker.sock"

如上面active(running) 为成功。

阿里的镜像源大全都在这里了 https://developer.aliyun.com/mirror/

RestClient工具类
CentOS开启SSH远程root登陆