跳转至

CentOS安装Docker

概要: 本文的安装方法适用于CentOS 7和CentOS 8版本,提供在线和离线安装两种方式。其它版本的CentOS安装Docker请参考官网指引。

创建时间: 2022.06.15 19:05:18

更新时间: 2023.08.03 00:42:04

移除旧的Docker环境

Bash
rpm -qa | grep docker
image.png
接下来,首先停掉Docker服务
Bash
systemctl stop docker
然后,将上述的Docker相关软件包全部移除
Bash
1
2
3
4
yum remove docker-ce-rootless-extras-20.10.11-3.el7.x86_64 -y
yum remove docker-ce-cli-20.10.11-3.el7.x86_64 -y
yum remove docker-ce-20.10.11-3.el7.x86_64 -y
yum remove docker-scan-plugin-0.9.0-3.el7.x86_64 -y

从仓库中安装Docker

配置Docker源

Bash
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

安装Docker软件包

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

离线安装Docker

首先移除旧的Docker,不再赘述

下载离线安装包

以 CentOS 7 为例(其他CentOS版本与之类似),首先进入 CentOS 7 离线RPM包下载 页面,下载最新的安装包到文件夹

Bash
mkdir ~/docker_rpms
cd ~/docker_rpms

# containerd.io
wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.6.6-3.1.el7.x86_64.rpm
# docker-ce
wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-20.10.17-3.el7.x86_64.rpm
# docker-ce-cli
wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-cli-20.10.17-3.el7.x86_64.rpm
# docker-ce-rootless-extras
wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-rootless-extras-20.10.17-3.el7.x86_64.rpm

# docker-compose-plugin
wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-compose-plugin-2.6.0-3.el7.x86_64.rpm

# docker-scan-plugin
wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-scan-plugin-0.17.0-3.el7.x86_64.rpm
image.png

清理Docker官方源

为避免无谓的从Docker仓库龟速下载在线安装包解决依赖问题,首先移除掉Docker的官方RPM源

Bash
1
2
3
cd /etc/yum.repos.d
ll
rm -rf docker-ce.repo
image.png
接下来,重新生成yum仓库缓存
Bash
yum clean all
yum makecache
image.png

离线安装Docker

Bash
cd ~/docker_rpms
yum install *.rpm -y
image.png
启动并测试Docker
Bash
1
2
3
systemctl start docker
docker info
docker compose version
image.png
image.png
至此离线安装Docker完毕

测试Docker

Bash
sudo docker run hello-world
测试结果如下
Bash
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.

参考