CentOS7.x安装docker全过程

1、检查一下yum命令

[root@localhost ~]# yum
Loaded plugins: fastestmirror, langpacks
You need to give some command
Usage: yum [options] COMMAND

List of Commands:

check          Check for problems in the rpmdb
check-update   Check for available package updates
clean          Remove cached data
deplist        List a package's dependencies
distribution-synchronization Synchronize installed packages to the latest available versions
downgrade      downgrade a package
erase          Remove a package or packages from your system
fs             Acts on the filesystem data of the host, mainly for removing docs/lanuages for minimal hosts.
fssnapshot     Creates filesystem snapshots, or lists/deletes current snapshots.
groups         Display, or use, the groups information
help           Display a helpful usage message
history        Display, or use, the transaction history
info           Display details about a package or group of packages
install        Install a package or packages on your system
langavailable  Check available languages
langinfo       List languages information
langinstall    Install appropriate language packs for a language
langlist       List installed languages
langremove     Remove installed language packs for a language
list           List a package or groups of packages
load-transaction load a saved transaction from filename
makecache      Generate the metadata cache
provides       Find what package provides the given value
reinstall      reinstall a package
repo-pkgs      Treat a repo. as a group of packages, so we can install/remove all of them
repolist       Display the configured software repositories
search         Search package details for the given string
shell          Run an interactive yum shell
swap           Simple way to swap packages, instead of using shell
update         Update a package or packages on your system
update-minimal Works like upgrade, but goes to the 'newest' package match which fixes a problem that affects your system
updateinfo     Acts on repository update information
upgrade        Update packages taking obsoletes into account
version        Display a version for the machine and/or available repos.


Options:
  -h, --help            show this help message and exit
  -t, --tolerant        be tolerant of errors
  -C, --cacheonly       run entirely from system cache, don't update cache
  -c [config file], --config=[config file]
                        config file location
  -R [minutes], --randomwait=[minutes]
                        maximum command wait time
  -d [debug level], --debuglevel=[debug level]
                        debugging output level
  --showduplicates      show duplicates, in repos, in list/search commands
  -e [error level], --errorlevel=[error level]
                        error output level
  --rpmverbosity=[debug level name]
                        debugging output level for rpm
  -q, --quiet           quiet operation
  -v, --verbose         verbose operation
  -y, --assumeyes       answer yes for all questions
  --assumeno            answer no for all questions
  --version             show Yum version and exit
  --installroot=[path]  set install root
  --enablerepo=[repo]   enable one or more repositories (wildcards allowed)
  --disablerepo=[repo]  disable one or more repositories (wildcards allowed)
  -x [package], --exclude=[package]
                        exclude package(s) by name or glob
  --disableexcludes=[repo]
                        disable exclude from main, for a repo or for
                        everything
  --disableincludes=[repo]
                        disable includepkgs for a repo or for everything
  --obsoletes           enable obsoletes processing during updates
  --noplugins           disable Yum plugins
  --nogpgcheck          disable gpg signature checking
  --disableplugin=[plugin]
                        disable plugins by name
  --enableplugin=[plugin]
                        enable plugins by name
  --skip-broken         skip packages with depsolving problems
  --color=COLOR         control whether color is used
  --releasever=RELEASEVER
                        set value of $releasever in yum config and repo files
  --downloadonly        don't update, just download
  --downloaddir=DLDIR   specifies an alternate directory to store packages
  --setopt=SETOPTS      set arbitrary config and repo options
  --bugfix              Include bugfix relevant packages, in updates
  --security            Include security relevant packages, in updates
  --advisory=ADVS, --advisories=ADVS
                        Include packages needed to fix the given advisory, in
                        updates
  --bzs=BZS             Include packages needed to fix the given BZ, in
                        updates
  --cves=CVES           Include packages needed to fix the given CVE, in
                        updates
  --sec-severity=SEVS, --secseverity=SEVS
                        Include security relevant packages matching the
                        severity, in updates

  Plugin Options:
You have mail in /var/spool/mail/root

2、在安装docker之前,如果这台机器之前安装过docker,那么首先使用yum -y remove docker命令移除系统中已有的旧版本的docker

[root@localhost ~]# yum -y remove docker
Loaded plugins: fastestmirror, langpacks
No Match for argument: docker
No Packages marked for removal
[root@localhost ~]#


3、安装yum-utils管理yum源

1)安装yum-utils

 [root@localhost ~]# yum install -y yum-utils
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: ftp.sjtu.edu.cn
 * extras: mirrors.njupt.edu.cn
 * updates: ftp.sjtu.edu.cn
base                                                                                                                                                                                                                                            | 3.6 kB  00:00:00     
extras                                                                                                                                                                                                                                          | 2.9 kB  00:00:00     
updates                                                                                                                                                                                                                                         | 2.9 kB  00:00:00     
(1/4): base/7/x86_64/group_gz                                                                                                                                                                                                                   | 153 kB  00:00:00     
(2/4): extras/7/x86_64/primary_db                                                                                                                                                                                                               | 243 kB  00:00:00     
(3/4): updates/7/x86_64/primary_db                                                                                                                                                                                                              |  12 MB  00:00:02     
(4/4): base/7/x86_64/primary_db                                                                                                                                                                                                                 | 6.1 MB  00:00:02     
Package yum-utils-1.1.31-54.el7_8.noarch already installed and latest version
Nothing to do

2)新增yum源

    ##官网地址
 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  ##阿里云地址(推荐)
 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo  

[root@localhost ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
Loaded plugins: fastestmirror, langpacks
adding repo from: http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
grabbing file http://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


4、建立元数据缓存yum makecache fast

[root@localhost ~]# yum makecache fast
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: ftp.sjtu.edu.cn
 * extras: mirrors.njupt.edu.cn
 * updates: ftp.sjtu.edu.cn
base                                                                                                                                                                                                                                            | 3.6 kB  00:00:00     
docker-ce-stable                                                                                                                                                                                                                                | 3.5 kB  00:00:00     
extras                                                                                                                                                                                                                                          | 2.9 kB  00:00:00     
updates                                                                                                                                                                                                                                         | 2.9 kB  00:00:00     
(1/2): docker-ce-stable/7/x86_64/updateinfo                                                                                                                                                                                                     |   55 B  00:00:00     
(2/2): docker-ce-stable/7/x86_64/primary_db                                                                                                                                                                                                     |  69 kB  00:00:00     
Metadata Cache Created

5、安装最新版本的docker :yum -y install docker-ce

[root@localhost ~]# yum -y install docker-ce
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: ftp.sjtu.edu.cn
 * extras: mirrors.ustc.edu.cn
 * updates: ftp.sjtu.edu.cn
Resolving Dependencies
--> Running transaction check
---> Package docker-ce.x86_64 3:20.10.11-3.el7 will be installed
--> Processing Dependency: container-selinux >= 2:2.74 for package: 3:docker-ce-20.10.11-3.el7.x86_64
--> Processing Dependency: containerd.io >= 1.4.1 for package: 3:docker-ce-20.10.11-3.el7.x86_64
--> Processing Dependency: docker-ce-cli for package: 3:docker-ce-20.10.11-3.el7.x86_64
--> Processing Dependency: docker-ce-rootless-extras for package: 3:docker-ce-20.10.11-3.el7.x86_64
--> Running transaction check
---> Package container-selinux.noarch 2:2.119.2-1.911c772.el7_8 will be installed
---> Package containerd.io.x86_64 0:1.4.12-3.1.el7 will be installed
---> Package docker-ce-cli.x86_64 1:20.10.11-3.el7 will be installed
--> Processing Dependency: docker-scan-plugin(x86-64) for package: 1:docker-ce-cli-20.10.11-3.el7.x86_64
---> Package docker-ce-rootless-extras.x86_64 0:20.10.11-3.el7 will be installed
--> Processing Dependency: fuse-overlayfs >= 0.7 for package: docker-ce-rootless-extras-20.10.11-3.el7.x86_64
--> Processing Dependency: slirp4netns >= 0.4 for package: docker-ce-rootless-extras-20.10.11-3.el7.x86_64
--> Running transaction check
---> Package docker-scan-plugin.x86_64 0:0.9.0-3.el7 will be installed
---> Package fuse-overlayfs.x86_64 0:0.7.2-6.el7_8 will be installed
--> Processing Dependency: libfuse3.so.3(FUSE_3.2)(64bit) for package: fuse-overlayfs-0.7.2-6.el7_8.x86_64
--> Processing Dependency: libfuse3.so.3(FUSE_3.0)(64bit) for package: fuse-overlayfs-0.7.2-6.el7_8.x86_64
--> Processing Dependency: libfuse3.so.3()(64bit) for package: fuse-overlayfs-0.7.2-6.el7_8.x86_64
---> Package slirp4netns.x86_64 0:0.4.3-4.el7_8 will be installed
--> Running transaction check
---> Package fuse3-libs.x86_64 0:3.6.1-4.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=======================================================================================================================================================================================================================================================================
 Package                                                                Arch                                                Version                                                                Repository                                                     Size
=======================================================================================================================================================================================================================================================================
Installing:
 docker-ce                                                              x86_64                                              3:20.10.11-3.el7                                                       docker-ce-stable                                               23 M
Installing for dependencies:
 container-selinux                                                      noarch                                              2:2.119.2-1.911c772.el7_8                                              extras                                                         40 k
 containerd.io                                                          x86_64                                              1.4.12-3.1.el7                                                         docker-ce-stable                                               28 M
 docker-ce-cli                                                          x86_64                                              1:20.10.11-3.el7                                                       docker-ce-stable                                               29 M
 docker-ce-rootless-extras                                              x86_64                                              20.10.11-3.el7                                                         docker-ce-stable                                              8.0 M
 docker-scan-plugin                                                     x86_64                                              0.9.0-3.el7                                                            docker-ce-stable                                              3.7 M
 fuse-overlayfs                                                         x86_64                                              0.7.2-6.el7_8                                                          extras                                                         54 k
 fuse3-libs                                                             x86_64                                              3.6.1-4.el7                                                            extras                                                         82 k
 slirp4netns                                                            x86_64                                              0.4.3-4.el7_8                                                          extras                                                         81 k

Transaction Summary
=======================================================================================================================================================================================================================================================================
Install  1 Package (+8 Dependent packages)

Total download size: 93 M
Installed size: 376 M
Downloading packages:
warning: /var/cache/yum/x86_64/7/extras/packages/container-selinux-2.119.2-1.911c772.el7_8.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Public key for container-selinux-2.119.2-1.911c772.el7_8.noarch.rpm is not installed
(1/9): container-selinux-2.119.2-1.911c772.el7_8.noarch.rpm                                                                                                                                                                                     |  40 kB  00:00:00     
warning: /var/cache/yum/x86_64/7/docker-ce-stable/packages/containerd.io-1.4.12-3.1.el7.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID 621e9f35: NOKEY======================                                                     ] 6.8 MB/s |  47 MB  00:00:06 ETA
Public key for containerd.io-1.4.12-3.1.el7.x86_64.rpm is not installed
(2/9): containerd.io-1.4.12-3.1.el7.x86_64.rpm                                                                                                                                                                                                  |  28 MB  00:00:05     
(3/9): docker-ce-20.10.11-3.el7.x86_64.rpm                                                                                                                                                                                                      |  23 MB  00:00:05     
(4/9): docker-ce-rootless-extras-20.10.11-3.el7.x86_64.rpm                                                                                                                                                                                      | 8.0 MB  00:00:02     
(5/9): slirp4netns-0.4.3-4.el7_8.x86_64.rpm                                                                                                                                                                                                     |  81 kB  00:00:00     
(6/9): fuse-overlayfs-0.7.2-6.el7_8.x86_64.rpm                                                                                                                                                                                                  |  54 kB  00:00:00     
(7/9): fuse3-libs-3.6.1-4.el7.x86_64.rpm                                                                                                                                                                                                        |  82 kB  00:00:00     
(8/9): docker-scan-plugin-0.9.0-3.el7.x86_64.rpm                                                                                                                                                                                                | 3.7 MB  00:00:01     
(9/9): docker-ce-cli-20.10.11-3.el7.x86_64.rpm                                                                                                                                                                                                  |  29 MB  00:00:07     
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                                                                                                  6.8 MB/s |  93 MB  00:00:13     
Retrieving key from https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
Importing GPG key 0x621E9F35:
 Userid     : "Docker Release (CE rpm) <docker@docker.com>"
 Fingerprint: 060a 61c5 1b55 8a7f 742b 77aa c52f eb6b 621e 9f35
 From       : https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Importing GPG key 0xF4A80EB5:
 Userid     : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
 Fingerprint: 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
 Package    : centos-release-7-9.2009.0.el7.centos.x86_64 (@anaconda)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : docker-scan-plugin-0.9.0-3.el7.x86_64                                                                                                                                                                                                               1/9
  Installing : 1:docker-ce-cli-20.10.11-3.el7.x86_64                                                                                                                                                                                                               2/9
  Installing : 2:container-selinux-2.119.2-1.911c772.el7_8.noarch                                                                                                                                                                                                  3/9
  Installing : containerd.io-1.4.12-3.1.el7.x86_64                                                                                                                                                                                                                 4/9
  Installing : slirp4netns-0.4.3-4.el7_8.x86_64                                                                                                                                                                                                                    5/9
  Installing : fuse3-libs-3.6.1-4.el7.x86_64                                                                                                                                                                                                                       6/9
  Installing : fuse-overlayfs-0.7.2-6.el7_8.x86_64                                                                                                                                                                                                                 7/9
  Installing : docker-ce-rootless-extras-20.10.11-3.el7.x86_64                                                                                                                                                                                                     8/9
  Installing : 3:docker-ce-20.10.11-3.el7.x86_64                                                                                                                                                                                                                   9/9
  Verifying  : 1:docker-ce-cli-20.10.11-3.el7.x86_64                                                                                                                                                                                                               1/9
  Verifying  : docker-scan-plugin-0.9.0-3.el7.x86_64                                                                                                                                                                                                               2/9
  Verifying  : fuse3-libs-3.6.1-4.el7.x86_64                                                                                                                                                                                                                       3/9
  Verifying  : fuse-overlayfs-0.7.2-6.el7_8.x86_64                                                                                                                                                                                                                 4/9
  Verifying  : slirp4netns-0.4.3-4.el7_8.x86_64                                                                                                                                                                                                                    5/9
  Verifying  : 2:container-selinux-2.119.2-1.911c772.el7_8.noarch                                                                                                                                                                                                  6/9
  Verifying  : 3:docker-ce-20.10.11-3.el7.x86_64                                                                                                                                                                                                                   7/9
  Verifying  : docker-ce-rootless-extras-20.10.11-3.el7.x86_64                                                                                                                                                                                                     8/9
  Verifying  : containerd.io-1.4.12-3.1.el7.x86_64                                                                                                                                                                                                                 9/9

Installed:
  docker-ce.x86_64 3:20.10.11-3.el7                                                                                                                                                                                                                                    

Dependency Installed:
  container-selinux.noarch 2:2.119.2-1.911c772.el7_8  containerd.io.x86_64 0:1.4.12-3.1.el7  docker-ce-cli.x86_64 1:20.10.11-3.el7  docker-ce-rootless-extras.x86_64 0:20.10.11-3.el7  docker-scan-plugin.x86_64 0:0.9.0-3.el7  fuse-overlayfs.x86_64 0:0.7.2-6.el7_8
  fuse3-libs.x86_64 0:3.6.1-4.el7                     slirp4netns.x86_64 0:0.4.3-4.el7_8    

Complete!


***也可以使用yum list docker-ce.x86_64 --showduplicates | sort -r命令列出可用的docker版本;
[root@localhost ~]# yum list docker-ce.x86_64 --showduplicates | sort -r
 * updates: mirrors.163.com
Loading mirror speeds from cached hostfile
Loaded plugins: fastestmirror, langpacks
Installed Packages
 * extras: mirrors.ustc.edu.cn
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.11-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
 * base: mirrors.163.com
Available Packages
**使用yum -y install docker-ce-version来安装某一指定版本的docker;

6、启动docker: systemctl start docker

[root@localhost ~]# systemctl start docker

7、验证docker是否安装成功:docker run hello-world

[root@localhost ~]# docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
2db29710123e: Pull complete
Digest: sha256:cc15c5b292d8525effc0f89cb299f1804f3a725c8d05e158653a563f15e4f685
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/
出现如上所示,则证明安装成功;

8、查看docker版本信息:docker version

[root@localhost ~]# docker version
Client: Docker Engine - Community
 Version:           20.10.11
 API version:       1.41
 Go version:        go1.16.9
 Git commit:        dea9396
 Built:             Thu Nov 18 00:38:53 2021
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.11
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.16.9
  Git commit:       847da18
  Built:            Thu Nov 18 00:37:17 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.12
  GitCommit:        7b11cfaabd73bb80907dd23182b9347b4245eb5d
 runc:
  Version:          1.0.2
  GitCommit:        v1.0.2-0-g52b36a2
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

9、卸载docker

如第一步所示,使用命令yum -y remove docker-ce命令移除新版本的docker;

原文地址:https://www.cnblogs.com/xiaweicn/p/15588445.html