目录
[一、从 Docker 官方仓库安装最新版 Docker](#一、从 Docker 官方仓库安装最新版 Docker)
[1. 卸载旧版本 Docker(如果已安装)](#1. 卸载旧版本 Docker(如果已安装))
[2. 安装必要的依赖包](#2. 安装必要的依赖包)
[3. 添加 Docker 官方仓库](#3. 添加 Docker 官方仓库)
[4. 安装 Docker 最新版本](#4. 安装 Docker 最新版本)
[5. 启动 Docker 并设置开机自启](#5. 启动 Docker 并设置开机自启)
[6. 验证安装](#6. 验证安装)
[7. (可选)以非 root 用户运行 Docker](#7. (可选)以非 root 用户运行 Docker)
[二、使用 .tgz 文件安装特定版本 Docker](#二、使用 .tgz 文件安装特定版本 Docker)
[1. 下载 Docker 二进制包](#1. 下载 Docker 二进制包)
[2. 解压 Docker 二进制包](#2. 解压 Docker 二进制包)
[3. 复制 Docker 二进制文件到系统路径](#3. 复制 Docker 二进制文件到系统路径)
[4. 创建 Docker 系统服务](#4. 创建 Docker 系统服务)
[(1)创建 systemd 服务文件](#(1)创建 systemd 服务文件)
[(2)重新加载 systemd 配置](#(2)重新加载 systemd 配置)
[5. 启动 Docker 并设置开机自启](#5. 启动 Docker 并设置开机自启)
[6. 验证 Docker 功能](#6. 验证 Docker 功能)
[7. (可选)配置非 root 用户运行 Docker](#7. (可选)配置非 root 用户运行 Docker)
[8. 配置 Docker 存储驱动(可选)](#8. 配置 Docker 存储驱动(可选))
[1. 下载Docker-Compose](#1. 下载Docker-Compose)
[2. 设置权限](#2. 设置权限)
[3. 配置环境变量](#3. 配置环境变量)
在 CentOS 7 上安装 Docker,可以选择直接从 Docker 的官方仓库安装,这样可以确保你获得的是最新的稳定版本,并且易于管理和更新。也可以基于一个特定的 .tgz 文件(例如 docker-28.1.1.tgz),这通常是 Docker 的早期版本或者非官方构建。下面我将首先介绍如何从 Docker 官方仓库安装最新版本的 Docker,然后解释如何使用 .tgz 文件安装。
一、从 Docker 官方仓库安装最新版 Docker
1. 卸载旧版本 Docker(如果已安装)
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine2. 安装必要的依赖包
sudo yum install -y yum-utils device-mapper-persistent-data lvm23. 添加 Docker 官方仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo4. 安装 Docker 最新版本
sudo yum install -y docker-ce docker-ce-cli containerd.io5. 启动 Docker 并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker6. 验证安装
sudo docker --version输出类似:
Docker version 20.10.x, build xxxxxxx7. (可选)以非 root 用户运行 Docker
sudo usermod -aG docker $USER然后重新登录或运行:
newgrp docker注意事项:
- CentOS 7 兼容性:Docker 官方支持 CentOS 7,但未来新版本可能不再支持。
- 防火墙设置:如果启用了防火墙,可能需要开放相关端口。
二、使用 .tgz 文件安装特定版本 Docker
如果你有特定的需求需要安装一个特定的 .tgz 文件(例如 docker-28.1.1.tgz),你可以按照以下步骤操作:
1. 下载 Docker 二进制包
确保你已经下载了 docker-28.1.1.tgz 文件,并上传到 CentOS 7 服务器(或直接下载):
wget https://example.com/docker-28.1.1.tgz  # 替换为实际的下载链接(如果 docker-28.1.1.tgz 是本地文件,请先上传到服务器。)
2. 解压 Docker 二进制包
tar -xzvf docker-28.1.1.tgz -C /tmp解压后,/tmp/docker/ 目录下应该包含 dockerd、docker 等可执行文件。
3. 复制 Docker 二进制文件到系统路径
sudo cp /tmp/docker/* /usr/bin/验证是否安装成功:
docker --version
dockerd --version应该输出类似:
Docker version 28.1.1, build xxxxxxx4. 创建 Docker 系统服务
(1)创建 systemd 服务文件
sudo vi /etc/systemd/system/docker.service写入以下内容:
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target(2)重新加载 systemd 配置
sudo systemctl daemon-reload5. 启动 Docker 并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker检查 Docker 是否运行:
sudo systemctl status docker如果正常,应该显示 active (running)。
6. 验证 Docker 功能
sudo docker run hello-world如果成功,会输出:
Hello from Docker!
This message shows that your installation appears to be working correctly.7. (可选)配置非 root 用户运行 Docker
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker  # 刷新用户组测试非 root 用户运行:
docker ps8. 配置 Docker 存储驱动(可选)
如果使用 devicemapper 或 overlay2,可以修改 /etc/docker/daemon.json:
sudo vi /etc/docker/daemon.json写入(示例):
{
  "storage-driver": "overlay2"
}然后重启 Docker:
sudo systemctl restart docker可能遇到的问题
- 
依赖缺失 - 
如果 dockerd启动失败,可能需要安装依赖:sudo yum install -y libseccomp iptables
 
- 
- 
SELinux 冲突 - 
临时禁用 SELinux: sudo setenforce 0
- 
或永久禁用(需修改 /etc/selinux/config)。
 
- 
- 
Firewall 阻止 - 
放行 Docker 相关端口: sudo firewall-cmd --permanent --add-port=2375/tcp sudo firewall-cmd --reload
 
- 
三、安装docker-compose
1. 下载Docker-Compose
去github官网搜索docker-compose:https://github.com/docker/compose/
将下载好的文件放入虚拟机中

2. 设置权限
需要将DockerCompose文件的名称修改一下,给予DockerCompose文件一个可执行的权限
# 改名
mv docker-compose-linux-aarch64 docker-compose
# 设置权限
chmod 777 docker-compose3. 配置环境变量
方便后期操作,配置一个环境变量
将docker-compose文件移动到了/usr/local/bin , 修改了/etc/profile文件,给/usr/local/bin配置到了PATH中
mv docker-compose /usr/local/bin
 
vi /etc/profile
# 添加内容: export PATH=$PATH:/usr/local/bin
 
source /etc/profile
 
docker-compose -v
