第十五章 Centos7下Docker版本升级


一、查找Docker的软件包

[root@staging ~]# rpm -qa | grep docker
docker-client-1.13.1-203.git0be3e21.el7.centos.x86_64
docker-common-1.13.1-203.git0be3e21.el7.centos.x86_64
docker-1.13.1-203.git0be3e21.el7.centos.x86_64

二、卸载旧版本

[root@staging ~]# yum -y remove  docker-client-1.13.1-203.git0be3e21.el7.centos.x86_64
[root@staging ~]# yum -y remove docker-common-1.13.1-203.git0be3e21.el7.centos.x86_64
[root@staging ~]# yum -y remove docker-1.13.1-203.git0be3e21.el7.centos.x86_64

三、安装依赖

[root@staging ~]# yum install -y yum-utils device-mapper-persistent-data lvm2

四、添加Docker镜像源

[root@staging ~]# yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

[root@staging ~]# ll /etc/yum.repos.d/
total 12
-rw-r--r--. 1 root root 2523 Aug  6 00:39 CentOS-Base.repo
-rw-r--r--  1 root root 2640 Mar 16  2020 docker-ce.repo
-rw-r--r--. 1 root root  664 Aug  6 00:40 epel.repo

五、安装Docker

[root@staging ~]# yum -y install docker-ce 

六、重新设置Docker Root Dir

#1.查看之前Docker目录位置
[root@staging docker-image]# docker info |grep "Docker Root Dir"
 Docker Root Dir: /data3/docker-data/docker

#2.重新设置 Docker Root Dir
[root@staging ~]# vim /usr/lib/systemd/system/docker.service
# 在 ExecStart=/usr/bin/dockerd 后追加 --graph=/data3/docker-data/docker,注意如果本来后面有其他参数不要搞乱了
# 示例如下(后面其他参数是我个人配置别的使用的请忽略)
ExecStart=/usr/bin/dockerd --graph=/data3/docker-data/docker -H fd:// --containerd=/run/containerd/containerd.sock

七、重新加载配置启动服务

#1.重新加载配置启动服务
[root@staging ~]# systemctl daemon-reload

#2.立即启动服务并设置开机自启
[root@staging ~]# systemctl  enable  --now docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.

八、验证Docker服务

[root@staging ~]# docker info
Client:
 Context:    default
 Debug Mode: false
 Plugins:
  app: Docker App (Docker Inc., v0.9.1-beta3)
  buildx: Build with BuildKit (Docker Inc., v0.6.3-docker)
  scan: Docker Scan (Docker Inc., v0.9.0)

Server:
 Containers: 6
  Running: 3
  Paused: 0
  Stopped: 3
 Images: 12
 Server Version: 20.10.11
 Storage Driver: overlay2
  Backing Filesystem: xfs
  Supports d_type: true
  Native Overlay Diff: true
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Cgroup Version: 1
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 7b11cfaabd73bb80907dd23182b9347b4245eb5d
 runc version: v1.0.2-0-g52b36a2
 init version: de40ad0
 Security Options:
  seccomp
   Profile: default
 Kernel Version: 3.10.0-1160.15.2.el7.x86_64
 Operating System: CentOS Linux 7 (Core)
 OSType: linux
 Architecture: x86_64
 CPUs: 4
 Total Memory: 15.47GiB
 Name: staging
 ID: YYU2:DJRP:A2PK:CS2C:MMCJ:FSXI:Y6F5:OQKI:NWWE:6BQB:JZZC:YOD6
 Docker Root Dir: /data3/docker-data/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false

九、验证镜像

[root@staging ~]# docker images
REPOSITORY                                                    TAG       IMAGE ID       CREATED        SIZE
gitlab/gitlab-ce                                              latest    c3747d47072b   9 days ago     2.33GB
sonatype/nexus3                                               latest    84bed2486e46   3 months ago   655MB
registry.cn-shanghai.aliyuncs.com/linux_yuncloud/jira         v8.16.1   959de0407cc8   6 months ago   645MB
registry.cn-shanghai.aliyuncs.com/linux_yuncloud/confluence   v7.9.3    97c84f97cdb4   6 months ago   848MB
amancevice/superset                                           latest    e5aed97adf10   7 months ago   2.24GB
portainer/portainer                                           latest    580c0e4e98b0   8 months ago   79.1MB

十、重启Docker服务

[root@staging ~]# docker restart $(docker container  ls -aq)
3b491ceabf5e
56c25e5d5e99
a6885caddd7e
8dea79eff7eb
fd65270e17d6
ed2bb7849dec

至此Docker版本升级完成!