> 技术文档 > CentOS7.9 下 Docker 的安装与配置

CentOS7.9 下 Docker 的安装与配置


CentOS7.9 下 Docker 的安装与配置

    • 1. 前言
    • 2. 环境准备
      • 2.1 检查系统内核版本
      • 2.2 系统架构图
    • 3. 卸载旧版本(如适用)
    • 4. 安装依赖包
    • 5. 设置 Docker 仓库
      • 5.1 添加 Docker 官方仓库(国内推荐使用镜像源)
      • 5.2 仓库配置流程图
    • 6. 安装 Docker 引擎
      • 6.1 安装最新版本 Docker
      • 6.2 安装指定版本 Docker
    • 7. 启动 Docker 并设置开机自启
      • 7.1 启动 Docker 服务
      • 7.2 设置开机自启
      • 7.3 验证 Docker 状态
    • 8. Docker 服务管理常用命令
    • 9. 配置镜像加速器(国内用户建议配置)
    • 10. 验证安装
    • 11. 常见问题解决
      • 11.1 权限问题
      • 11.2 防火墙问题
    • 12. 总结

🌺The Begin🌺点点关注,收藏不迷路🌺

1. 前言

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上。本文将详细介绍在 CentOS 系统上安装 Docker 的完整步骤。

2. 环境准备

2.1 检查系统内核版本

Docker 要求 CentOS 系统的内核版本高于 3.10,首先检查你的内核版本:

uname -r

输出示例:

CentOS7.9 下 Docker 的安装与配置

2.2 系统架构图

#mermaid-svg-uG2UPHASWAExAUOd {font-family:\"trebuchet ms\",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-uG2UPHASWAExAUOd .error-icon{fill:#552222;}#mermaid-svg-uG2UPHASWAExAUOd .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-uG2UPHASWAExAUOd .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-uG2UPHASWAExAUOd .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-uG2UPHASWAExAUOd .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-uG2UPHASWAExAUOd .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-uG2UPHASWAExAUOd .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-uG2UPHASWAExAUOd .marker{fill:#333333;stroke:#333333;}#mermaid-svg-uG2UPHASWAExAUOd .marker.cross{stroke:#333333;}#mermaid-svg-uG2UPHASWAExAUOd svg{font-family:\"trebuchet ms\",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-uG2UPHASWAExAUOd .label{font-family:\"trebuchet ms\",verdana,arial,sans-serif;color:#333;}#mermaid-svg-uG2UPHASWAExAUOd .cluster-label text{fill:#333;}#mermaid-svg-uG2UPHASWAExAUOd .cluster-label span{color:#333;}#mermaid-svg-uG2UPHASWAExAUOd .label text,#mermaid-svg-uG2UPHASWAExAUOd span{fill:#333;color:#333;}#mermaid-svg-uG2UPHASWAExAUOd .node rect,#mermaid-svg-uG2UPHASWAExAUOd .node circle,#mermaid-svg-uG2UPHASWAExAUOd .node ellipse,#mermaid-svg-uG2UPHASWAExAUOd .node polygon,#mermaid-svg-uG2UPHASWAExAUOd .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-uG2UPHASWAExAUOd .node .label{text-align:center;}#mermaid-svg-uG2UPHASWAExAUOd .node.clickable{cursor:pointer;}#mermaid-svg-uG2UPHASWAExAUOd .arrowheadPath{fill:#333333;}#mermaid-svg-uG2UPHASWAExAUOd .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-uG2UPHASWAExAUOd .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-uG2UPHASWAExAUOd .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-uG2UPHASWAExAUOd .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-uG2UPHASWAExAUOd .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-uG2UPHASWAExAUOd .cluster text{fill:#333;}#mermaid-svg-uG2UPHASWAExAUOd .cluster span{color:#333;}#mermaid-svg-uG2UPHASWAExAUOd div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\"trebuchet ms\",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-uG2UPHASWAExAUOd :root{--mermaid-font-family:\"trebuchet ms\",verdana,arial,sans-serif;} CentOS系统 内核版本大于3.10 安装依赖包 设置Docker仓库 安装Docker引擎 启动Docker服务

3. 卸载旧版本(如适用)

如果你之前安装过旧版本的 Docker,需要先卸载它们:

sudo yum remove docker \\  docker-client \\  docker-client-latest \\  docker-common \\  docker-latest \\  docker-latest-logrotate \\  docker-logrotate \\  docker-engine

CentOS7.9 下 Docker 的安装与配置

4. 安装依赖包

在设置 Docker 仓库之前,需要安装一些必要的软件包:

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

这些软件包的作用:

  • yum-utils:提供了 yum-config-manager 工具
  • device-mapper-persistent-datalvm2:是 devicemapper 存储驱动所需的
    CentOS7.9 下 Docker 的安装与配置

5. 设置 Docker 仓库

5.1 添加 Docker 官方仓库(国内推荐使用镜像源)

# 官方源(不推荐国内使用)# sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo# 中科大镜像源sudo yum-config-manager --add-repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo# 清华大学镜像源# sudo yum-config-manager --add-repo https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo

CentOS7.9 下 Docker 的安装与配置

5.2 仓库配置流程图

#mermaid-svg-q2QOMw3t2k2V0MwI {font-family:\"trebuchet ms\",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-q2QOMw3t2k2V0MwI .error-icon{fill:#552222;}#mermaid-svg-q2QOMw3t2k2V0MwI .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-q2QOMw3t2k2V0MwI .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-q2QOMw3t2k2V0MwI .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-q2QOMw3t2k2V0MwI .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-q2QOMw3t2k2V0MwI .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-q2QOMw3t2k2V0MwI .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-q2QOMw3t2k2V0MwI .marker{fill:#333333;stroke:#333333;}#mermaid-svg-q2QOMw3t2k2V0MwI .marker.cross{stroke:#333333;}#mermaid-svg-q2QOMw3t2k2V0MwI svg{font-family:\"trebuchet ms\",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-q2QOMw3t2k2V0MwI .label{font-family:\"trebuchet ms\",verdana,arial,sans-serif;color:#333;}#mermaid-svg-q2QOMw3t2k2V0MwI .cluster-label text{fill:#333;}#mermaid-svg-q2QOMw3t2k2V0MwI .cluster-label span{color:#333;}#mermaid-svg-q2QOMw3t2k2V0MwI .label text,#mermaid-svg-q2QOMw3t2k2V0MwI span{fill:#333;color:#333;}#mermaid-svg-q2QOMw3t2k2V0MwI .node rect,#mermaid-svg-q2QOMw3t2k2V0MwI .node circle,#mermaid-svg-q2QOMw3t2k2V0MwI .node ellipse,#mermaid-svg-q2QOMw3t2k2V0MwI .node polygon,#mermaid-svg-q2QOMw3t2k2V0MwI .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-q2QOMw3t2k2V0MwI .node .label{text-align:center;}#mermaid-svg-q2QOMw3t2k2V0MwI .node.clickable{cursor:pointer;}#mermaid-svg-q2QOMw3t2k2V0MwI .arrowheadPath{fill:#333333;}#mermaid-svg-q2QOMw3t2k2V0MwI .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-q2QOMw3t2k2V0MwI .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-q2QOMw3t2k2V0MwI .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-q2QOMw3t2k2V0MwI .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-q2QOMw3t2k2V0MwI .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-q2QOMw3t2k2V0MwI .cluster text{fill:#333;}#mermaid-svg-q2QOMw3t2k2V0MwI .cluster span{color:#333;}#mermaid-svg-q2QOMw3t2k2V0MwI div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\"trebuchet ms\",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-q2QOMw3t2k2V0MwI :root{--mermaid-font-family:\"trebuchet ms\",verdana,arial,sans-serif;} 选择镜像源 官方源 中科大源 清华源 速度可能较慢 国内推荐

6. 安装 Docker 引擎

6.1 安装最新版本 Docker

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

各组件说明:

  • docker-ce:Docker 社区版
  • docker-ce-cli:Docker 命令行工具
  • containerd.io:容器运行时

CentOS7.9 下 Docker 的安装与配置

6.2 安装指定版本 Docker

如果需要安装特定版本,可以先列出可用版本:

yum list docker-ce --showduplicates | sort -r

CentOS7.9 下 Docker 的安装与配置

然后选择特定版本安装:

sudo yum install -y docker-ce-20.10.24 docker-ce-cli-20.10.24 containerd.io

7. 启动 Docker 并设置开机自启

7.1 启动 Docker 服务

sudo systemctl start docker

7.2 设置开机自启

sudo systemctl enable docker

7.3 验证 Docker 状态

sudo systemctl status docker

正常输出应显示 “active (running)”。

CentOS7.9 下 Docker 的安装与配置

8. Docker 服务管理常用命令

命令 描述 sudo systemctl start docker 启动 Docker 服务 sudo systemctl stop docker 停止 Docker 服务 sudo systemctl restart docker 重启 Docker 服务 sudo systemctl status docker 查看 Docker 服务状态 sudo systemctl enable docker 设置开机自启 sudo systemctl disable docker 禁用开机自启

9. 配置镜像加速器(国内用户建议配置)

为了提升镜像拉取速度,建议配置国内镜像加速器(轩辕镜像免费版):

  1. 创建或修改 /etc/docker/daemon.json 文件:
sudo tee /etc/docker/daemon.json <<-\'EOF\'{ \"registry-mirrors\": [ \"https://docker.xuanyuan.me\" ]}EOF
  1. 重新启动服务:
sudo systemctl daemon-reloadsudo systemctl restart docker

10. 验证安装

运行 hello-world 镜像来验证 Docker 是否正确安装:

sudo docker run hello-world

成功输出应包含以下信息:

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

CentOS7.9 下 Docker 的安装与配置

11. 常见问题解决

11.1 权限问题

如果遇到权限拒绝错误,可以将当前用户加入 docker 组:

sudo usermod -aG docker $USER

然后退出当前会话重新登录。

11.2 防火墙问题

如果防火墙开启,需要放行 Docker 相关端口:

sudo firewall-cmd --permanent --zone=public --add-port=2375-2377/tcpsudo firewall-cmd --permanent --zone=public --add-port=7946/tcpsudo firewall-cmd --permanent --zone=public --add-port=7946/udpsudo firewall-cmd --permanent --zone=public --add-port=4789/udpsudo firewall-cmd --reload

12. 总结

通过以上步骤,我们已经在 CentOS 系统上成功安装并配置了 Docker。Docker 的安装流程可以总结为:

#mermaid-svg-aAglmu7UxnbUE5SV {font-family:\"trebuchet ms\",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-aAglmu7UxnbUE5SV .error-icon{fill:#552222;}#mermaid-svg-aAglmu7UxnbUE5SV .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-aAglmu7UxnbUE5SV .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-aAglmu7UxnbUE5SV .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-aAglmu7UxnbUE5SV .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-aAglmu7UxnbUE5SV .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-aAglmu7UxnbUE5SV .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-aAglmu7UxnbUE5SV .marker{fill:#333333;stroke:#333333;}#mermaid-svg-aAglmu7UxnbUE5SV .marker.cross{stroke:#333333;}#mermaid-svg-aAglmu7UxnbUE5SV svg{font-family:\"trebuchet ms\",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-aAglmu7UxnbUE5SV .label{font-family:\"trebuchet ms\",verdana,arial,sans-serif;color:#333;}#mermaid-svg-aAglmu7UxnbUE5SV .cluster-label text{fill:#333;}#mermaid-svg-aAglmu7UxnbUE5SV .cluster-label span{color:#333;}#mermaid-svg-aAglmu7UxnbUE5SV .label text,#mermaid-svg-aAglmu7UxnbUE5SV span{fill:#333;color:#333;}#mermaid-svg-aAglmu7UxnbUE5SV .node rect,#mermaid-svg-aAglmu7UxnbUE5SV .node circle,#mermaid-svg-aAglmu7UxnbUE5SV .node ellipse,#mermaid-svg-aAglmu7UxnbUE5SV .node polygon,#mermaid-svg-aAglmu7UxnbUE5SV .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-aAglmu7UxnbUE5SV .node .label{text-align:center;}#mermaid-svg-aAglmu7UxnbUE5SV .node.clickable{cursor:pointer;}#mermaid-svg-aAglmu7UxnbUE5SV .arrowheadPath{fill:#333333;}#mermaid-svg-aAglmu7UxnbUE5SV .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-aAglmu7UxnbUE5SV .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-aAglmu7UxnbUE5SV .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-aAglmu7UxnbUE5SV .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-aAglmu7UxnbUE5SV .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-aAglmu7UxnbUE5SV .cluster text{fill:#333;}#mermaid-svg-aAglmu7UxnbUE5SV .cluster span{color:#333;}#mermaid-svg-aAglmu7UxnbUE5SV div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\"trebuchet ms\",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-aAglmu7UxnbUE5SV :root{--mermaid-font-family:\"trebuchet ms\",verdana,arial,sans-serif;} 检查内核版本 卸载旧版本 安装依赖包 设置仓库源 安装Docker引擎 启动服务 验证安装 配置镜像加速

现在你可以开始使用 Docker 来容器化你的应用了!Docker 提供了强大的容器管理能力,可以帮助你实现应用的快速部署和环境一致性。

在这里插入图片描述

🌺The End🌺点点关注,收藏不迷路🌺