在 CentOS 上安装 Docker 的过程相对简单,主要包括安装 Docker Engine 和相关依赖。下面是详细的步骤:
1. 系统要求
- CentOS 7 或 CentOS 8。
- 需要一个 root 权限 或 sudo 权限 的用户。
- 需要启用 虚拟化,对于某些操作需要支持 Linux 内核 3.10 以上。
2. 更新 CentOS 软件包
首先,更新系统上的软件包:
sudo yum update -y
3. 安装 Docker 所需的依赖
Docker 需要一些额外的依赖库和工具,首先安装 yum-utils
,这是一个用于管理yum仓库和包的工具。
sudo yum install -y yum-utils
4. 设置 Docker 官方的 YUM 仓库
Docker 官方提供了一个 YUM 仓库,可以通过这个仓库安装 Docker。在 CentOS 7 和 CentOS 8 中,安装步骤稍有不同,但总体流程相似。
4.1. 设置 Docker 仓库
首先添加 Docker 仓库的 GPG 密钥:
sudo curl -fsSL https://download.docker.com/linux/centos/gpg | sudo tee /etc/yum.repos.d/docker.repo
然后,添加 Docker 的仓库配置。对于 CentOS 7 和 CentOS 8,Docker 官方仓库的地址不同:
对于 CentOS 7:
sudo tee /etc/yum.repos.d/docker.repo <<EOF [docker-ce-stable] name=Docker CE Stable - $basearch baseurl=https://download.docker.com/linux/centos/7/$basearch/stable enabled=1 gpgcheck=1 gpgkey=https://download.docker.com/linux/centos/gpg EOF
对于 CentOS 8,可以参考以下配置:
sudo tee /etc/yum.repos.d/docker.repo <<EOF [docker-ce-stable] name=Docker CE Stable - $basearch baseurl=https://download.docker.com/linux/centos/8/$basearch/stable enabled=1 gpgcheck=1 gpgkey=https://download.docker.com/linux/centos/gpg EOF
5. 安装 Docker
5.1. 安装 Docker CE(Community Edition)
使用以下命令安装 Docker CE:
sudo yum install -y docker-ce docker-ce-cli containerd.io
这个命令会安装 Docker 的最新稳定版本。
5.2. 安装 Docker 版本
如果你需要安装特定版本的 Docker,可以列出可用版本,然后选择所需版本:
yum list docker-ce --showduplicates | sort -r
然后安装特定版本,例如:
sudo yum install -y docker-ce-<version>
6. 启动 Docker 服务
安装完成后,启动 Docker 服务:
sudo systemctl start docker
确保 Docker 服务在系统启动时自动启动:
sudo systemctl enable docker
7. 验证 Docker 安装
检查 Docker 服务是否已成功启动:
sudo systemctl status docker
如果看到类似以下内容,说明 Docker 已正常运行:
● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since