欢迎光临
我们一直在努力

Ubuntu 22.04 安装 Docker 完整步骤(附镜像加速配置)

Ubuntu 22.04 安装 Docker 完整步骤(附镜像加速配置)

摘要

Docker 作为容器化技术的核心工具,凭借轻量、可移植、隔离性强的特性,已成为开发者部署应用、运维人员管理服务的必备工具。Ubuntu 22.04 LTS 作为长期支持版本,具备稳定、兼容的优势,是 Docker 部署的优选系统。本文将从环境准备、Docker 核心组件安装、配置验证、镜像加速优化、常见问题排查五个维度,提供详细且可复现的完整步骤,包含规范代码段、操作流程图解及实用技巧,同时规避 Ubuntu 22.04 系统下的安装陷阱,帮助新手快速上手 Docker 部署,助力开发者提升应用交付效率。无论是个人开发测试场景,还是小型生产环境部署,都能通过本文内容实现 Docker 的快速落地与优化。

在这里插入图片描述 🚀 个人主页 :有点流鼻涕 · CSDN 💬 座右铭 : “向光而行,沐光而生。”

在这里插入图片描述

  • Ubuntu 22.04 安装 Docker 完整步骤(附镜像加速配置)
    • 摘要
    • 1. 引言:Docker 与 Ubuntu 22.04 适配性说明
    • 2. 环境准备:Ubuntu 22.04 系统前置配置
      • 2.1 切换至 root 用户(可选,推荐)
      • 2.2 系统更新与升级
      • 2.3 安装必要依赖包
      • 2.4 清理旧版本 Docker(若已安装)
    • 3. Docker 安装:官方推荐步骤(分组件详解)
      • 3.1 添加 Docker 官方 GPG 密钥
      • 3.2 添加 Docker 官方软件源
      • 3.3 安装 Docker Engine 与相关组件
      • 3.4 验证 Docker 安装是否成功
    • 4. Docker 基础操作与验证
      • 4.1 镜像管理命令
      • 4.2 容器管理命令
      • 4.3 Docker 版本与信息查看
    • 5. 镜像加速配置:解决国内拉取镜像缓慢问题
      • 5.1 阿里云镜像加速器配置(推荐)
        • 5.1.1 获取阿里云专属加速地址
        • 5.1.2 配置镜像加速器
      • 5.2 其他国内镜像加速器备选方案
      • 5.3 验证镜像加速是否生效
    • 6. Docker 服务管理与开机自启配置
    • 7. 常见问题与解决方案
      • 7.1 问题1:添加 Docker 源后,apt update 报错 “GPG 错误”
      • 7.2 问题2:运行 docker 命令时,提示 “Permission denied” 权限不足
      • 7.3 问题3:镜像加速配置后,拉取镜像仍缓慢或超时
      • 7.4 问题4:Docker 服务启动失败,提示 “containerd 服务未运行”
    • 8. 操作流程图解
      • 8.1 Ubuntu 22.04 安装 Docker 完整流程图
      • 8.2 Docker 镜像拉取流程(含加速配置)
    • 9. 总结与拓展建议
      • 9.1 核心总结
      • 9.2 拓展建议
    • 10. 相关资源链接

1. 引言:Docker 与 Ubuntu 22.04 适配性说明

Docker 采用客户端-服务器(C/S)架构,核心组件包括 Docker Client(客户端)、Docker Daemon(守护进程)、Docker Image(镜像)、Docker Container(容器)等。Ubuntu 22.04 LTS(Jammy Jellyfish)作为 2022 年发布的长期支持版本,官方对其提供至 2027 年的安全更新与维护,与 Docker 最新稳定版(Docker Engine – Community)具备完美适配性,无需额外修改系统内核参数即可正常运行。

相较于旧版本 Ubuntu 系统,Ubuntu 22.04 内置的内核版本(5.15.x)已原生支持 Docker 所需的容器化特性,无需手动升级内核;同时,系统默认的软件源与 Docker 官方源兼容性更强,可有效减少安装过程中的依赖冲突问题。本文将严格遵循 Docker 官方安装指南,结合 Ubuntu 22.04 系统特性,提供最可靠的安装流程,同时补充国内用户必备的镜像加速配置,解决官方镜像拉取缓慢、超时等痛点。

2. 环境准备:Ubuntu 22.04 系统前置配置

在安装 Docker 前,需完成系统更新、依赖安装、旧版本清理等前置操作,确保安装环境纯净、稳定,避免后续出现兼容性问题。

2.1 切换至 root 用户(可选,推荐)

为避免频繁使用 sudo 命令导致权限问题,建议切换至 root 用户操作,或确保当前用户具备 sudo 权限。

# 切换至 root 用户(输入当前用户密码)
sudo -i

# 验证是否切换成功(命令行前缀变为 root@xxx)
whoami

2.2 系统更新与升级

更新系统软件包索引,升级已安装的软件包至最新版本,修复系统潜在漏洞,确保依赖库版本兼容。

# 更新软件包索引
apt update

# 升级已安装软件包(按提示输入 Y 确认)
apt upgrade -y

# 清理无用依赖包(可选,释放磁盘空间)
apt autoremove -y
apt clean

2.3 安装必要依赖包

安装 Docker 所需的依赖包,包括 apt 传输加密、CA 证书、软件源管理工具等,确保能通过 HTTPS 访问 Docker 官方源。

apt install -y apt-transport-https ca-certificates curl software-properties-common gnupg lsb-release

各依赖包作用说明:

  • apt-transport-https:允许 apt 通过 HTTPS 协议获取软件包;

  • ca-certificates:提供 CA 证书,确保 HTTPS 连接的安全性;

  • curl:用于下载 Docker 官方 GPG 密钥;

  • software-properties-common:提供添加、管理软件源的工具;

  • gnupg:用于验证软件包的签名,确保软件包完整性。

2.4 清理旧版本 Docker(若已安装)

若系统中已安装旧版本 Docker(如 docker、docker.io、docker-compose 等),需先卸载,避免与新版本冲突。Ubuntu 22.04 默认软件源中的 Docker 版本较旧,不推荐使用,建议卸载后通过官方源安装最新版。

# 卸载旧版本 Docker 及相关组件
apt remove -y docker docker-engine docker.io containerd runc docker-compose docker-compose-plugin

# 清理残留文件(确保环境纯净)
rm -rf /var/lib/docker
rm -rf /var/lib/containerd

3. Docker 安装:官方推荐步骤(分组件详解)

本文采用 Docker 官方推荐的安装方式,通过添加 Docker 官方软件源,安装最新稳定版 Docker Engine – Community,同时安装 Docker Compose(容器编排工具),满足多容器部署需求。

3.1 添加 Docker 官方 GPG 密钥

下载 Docker 官方 GPG 密钥并添加至系统信任列表,确保后续从官方源获取的软件包未被篡改。

# 下载 Docker 官方 GPG 密钥并添加至 apt 信任密钥环
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg –dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

# 验证密钥(可选,确保密钥正确)
gpg –no-default-keyring –keyring /usr/share/keyrings/docker-archive-keyring.gpg –list-keys

验证成功后,会显示 Docker 官方密钥信息,包含密钥指纹、发布者等内容,确认无误后继续下一步。

3.2 添加 Docker 官方软件源

将 Docker 官方软件源添加至 Ubuntu 系统的软件源列表,后续通过 apt 命令即可安装最新版 Docker。

# 添加 Docker 官方源(适配 Ubuntu 22.04 系统,代号 jammy)
echo "deb [arch=$(dpkg –print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null

参数说明:

  • arch=$(dpkg –print-architecture):自动适配系统架构(如 x86_64、arm64 等);

  • signed-by:指定密钥文件路径,确保软件源验证通过;

  • $(lsb_release -cs):自动获取系统代号(Ubuntu 22.04 为 jammy);

  • stable:表示安装稳定版 Docker,如需测试版可改为 test。

3.3 安装 Docker Engine 与相关组件

更新软件包索引(使系统识别新增的 Docker 源),然后安装 Docker Engine、Containerd(容器运行时)、Docker Compose 等核心组件。

# 更新软件包索引(包含 Docker 官方源)
apt update

# 安装 Docker 核心组件(最新稳定版)
apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

各组件作用:

  • docker-ce:Docker Engine 社区版,核心守护进程与工具;

  • docker-ce-cli:Docker 命令行客户端,用于与 Docker Daemon 交互;

  • containerd.io:高性能容器运行时,负责容器的创建、运行、销毁等生命周期管理;

  • docker-compose-plugin:Docker Compose 插件,支持通过 YAML 文件编排多容器应用。

3.4 验证 Docker 安装是否成功

安装完成后,启动 Docker 服务并运行官方测试镜像(hello-world),验证 Docker 是否能正常工作。

# 启动 Docker 服务
systemctl start docker

# 运行 hello-world 测试镜像(自动拉取镜像并创建容器)
docker run hello-world

若输出以下内容,说明 Docker 安装成功:

Hello from Docker!

This message shows that your installation appears to be working correctly.

该信息表示 Docker 成功拉取 hello-world 镜像,创建并运行容器,容器执行完成后自动退出,验证了 Docker 客户端、守护进程、镜像仓库交互等功能均正常。

4. Docker 基础操作与验证

掌握 Docker 基础操作,可快速管理镜像、容器、服务,以下为常用命令及示例,帮助新手快速上手。

4.1 镜像管理命令

# 拉取镜像(以 nginx 为例)
docker pull nginx

# 查看本地已拉取的镜像
docker images

# 删除指定镜像(通过镜像ID或名称)
docker rmi nginx:latest # 按名称删除
docker rmi 1234567890ab # 按镜像ID删除

# 搜索镜像(从 Docker Hub 搜索)
docker search mysql

4.2 容器管理命令

# 创建并运行容器(以 nginx 为例,后台运行,映射端口 80:80)
docker run -d –name my-nginx -p 80:80 nginx

# 查看运行中的容器
docker ps

# 查看所有容器(包含已停止的)
docker ps -a

# 停止容器
docker stop my-nginx

# 启动已停止的容器
docker start my-nginx

# 重启容器
docker restart my-nginx

# 删除容器(需先停止容器,强制删除加 -f 参数)
docker rm my-nginx
docker rm -f my-nginx # 强制删除运行中的容器

# 进入容器内部(交互式终端)
docker exec -it my-nginx /bin/bash

4.3 Docker 版本与信息查看

# 查看 Docker 版本信息
docker –version
docker version # 详细版本信息(客户端与守护进程)

# 查看 Docker 系统信息(包含镜像、容器数量,运行时等)
docker info

5. 镜像加速配置:解决国内拉取镜像缓慢问题

由于 Docker 官方镜像仓库(Docker Hub)位于海外,国内用户直接拉取镜像时,常出现速度缓慢、超时失败等问题。通过配置国内镜像加速器,可大幅提升镜像拉取速度,常用的国内加速器包括阿里云、网易云、Docker 中国官方镜像等。本文以阿里云镜像加速器为例,提供详细配置步骤,同时补充其他加速器备选方案。

5.1 阿里云镜像加速器配置(推荐)

阿里云镜像加速器为国内用户提供免费的镜像加速服务,需先注册阿里云账号并获取专属加速地址。

5.1.1 获取阿里云专属加速地址
  • 访问阿里云官网(https://www.aliyun.com/),注册并登录账号;

  • 搜索“容器镜像服务 ACR”,进入控制台;

  • 在左侧导航栏选择“镜像工具”→“镜像加速器”,即可获取专属加速地址(如 https://xxx.mirror.aliyuncs.com),不同账号的加速地址不同。

  • 5.1.2 配置镜像加速器

    创建 Docker 配置目录,编写 daemon.json 配置文件,添加镜像加速地址。

    # 创建 Docker 配置目录(若不存在)
    mkdir -p /etc/docker

    # 编写镜像加速配置文件(替换为自己的阿里云加速地址)
    tee /etc/docker/daemon.json <<-'EOF'
    {
    "registry-mirrors": ["https://xxx.mirror.aliyuncs.com"]
    }
    EOF

    # 重新加载 Docker 配置文件
    systemctl daemon-reload

    # 重启 Docker 服务(使配置生效)
    systemctl restart docker

    5.2 其他国内镜像加速器备选方案

    若无法获取阿里云加速地址,可使用以下免费镜像加速器:

    • 网易云镜像加速器:https://hub-mirror.c.163.com

    • Docker 中国官方镜像(已停止维护,仅作备选):https://registry.docker-cn.com

    • 华为云镜像加速器:https://05f073ad3c0010ea0f4bc00b7105ec20.mirror.swr.myhuaweicloud.com(需注册华为云账号)

    配置多个加速器时,可在 daemon.json 文件中添加多个地址,示例如下:

    {
    "registry-mirrors": [
    "https://xxx.mirror.aliyuncs.com",
    "https://hub-mirror.c.163.com"
    ]
    }

    5.3 验证镜像加速是否生效

    重启 Docker 服务后,通过 docker info 命令查看配置是否生效,若输出中包含配置的镜像加速器地址,说明配置成功。

    # 查看 Docker 信息,验证镜像加速配置
    docker info | grep "Registry Mirrors"

    输出结果如下(显示配置的加速地址):

    Registry Mirrors:

    https://xxx.mirror.aliyuncs.com/

    https://hub-mirror.c.163.com/

    此时拉取镜像(如 docker pull nginx),速度会显著提升,避免超时问题。

    6. Docker 服务管理与开机自启配置

    为确保 Docker 服务在系统重启后自动运行,需配置 Docker 开机自启,同时掌握服务启停、状态查看等管理命令,便于日常运维。

    # 查看 Docker 服务状态
    systemctl status docker

    # 启动 Docker 服务
    systemctl start docker

    # 停止 Docker 服务
    systemctl stop docker

    # 重启 Docker 服务
    systemctl restart docker

    # 配置 Docker 开机自启
    systemctl enable docker

    # 取消 Docker 开机自启
    systemctl disable docker

    # 查看 Docker 服务开机自启状态
    systemctl is-enabled docker

    配置开机自启后,可通过重启系统验证是否生效:

    # 重启系统
    reboot

    # 重启后查看 Docker 服务是否自动运行
    systemctl status docker

    若服务状态显示为 active (running),说明开机自启配置成功。

    7. 常见问题与解决方案

    在 Ubuntu 22.04 安装 Docker 过程中,可能遇到依赖冲突、权限不足、镜像拉取失败等问题,以下为常见问题及针对性解决方案,帮助快速排查故障。

    7.1 问题1:添加 Docker 源后,apt update 报错 “GPG 错误”

    报错信息:W: GPG error: https://download.docker.com/linux/ubuntu jammy InRelease: The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY XXXXXXXX

    解决方案:重新导入 Docker 官方 GPG 密钥,确保密钥正确。

    # 重新下载并导入 GPG 密钥
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg –dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

    # 再次更新软件包索引
    apt update

    7.2 问题2:运行 docker 命令时,提示 “Permission denied” 权限不足

    报错信息:Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: …

    解决方案:将当前用户添加至 docker 用户组,避免使用 root 用户操作。

    # 将当前用户添加至 docker 组
    usermod -aG docker $USER

    # 注销当前用户并重新登录(使权限生效)
    logout

    # 重新登录后,验证权限(无需 sudo 即可运行 docker 命令)
    docker ps

    7.3 问题3:镜像加速配置后,拉取镜像仍缓慢或超时

    可能原因:加速地址失效、网络环境限制、Docker 配置未生效。

    解决方案:

  • 更换其他国内镜像加速器(如网易云、华为云);

  • 重新加载配置并重启 Docker 服务:

  • systemctl daemon-reload
    systemctl restart docker

  • 检查网络连接,确保能正常访问加速地址(可通过 curl 测试):
  • curl https://hub-mirror.c.163.com

    7.4 问题4:Docker 服务启动失败,提示 “containerd 服务未运行”

    报错信息:Job for docker.service failed because the control process exited with error code.

    解决方案:启动 containerd 服务并配置开机自启,再重启 Docker 服务。

    # 启动 containerd 服务
    systemctl start containerd

    # 配置 containerd 开机自启
    systemctl enable containerd

    # 重启 Docker 服务
    systemctl restart docker

    # 查看 Docker 服务状态
    systemctl status docker

    8. 操作流程图解

    8.1 Ubuntu 22.04 安装 Docker 完整流程图

    #mermaid-svg-bxmItz33TpDYvUAk{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-bxmItz33TpDYvUAk .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-bxmItz33TpDYvUAk .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-bxmItz33TpDYvUAk .error-icon{fill:#552222;}#mermaid-svg-bxmItz33TpDYvUAk .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-bxmItz33TpDYvUAk .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-bxmItz33TpDYvUAk .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-bxmItz33TpDYvUAk .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-bxmItz33TpDYvUAk .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-bxmItz33TpDYvUAk .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-bxmItz33TpDYvUAk .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-bxmItz33TpDYvUAk .marker{fill:#333333;stroke:#333333;}#mermaid-svg-bxmItz33TpDYvUAk .marker.cross{stroke:#333333;}#mermaid-svg-bxmItz33TpDYvUAk svg{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-bxmItz33TpDYvUAk p{margin:0;}#mermaid-svg-bxmItz33TpDYvUAk .label{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;color:#333;}#mermaid-svg-bxmItz33TpDYvUAk .cluster-label text{fill:#333;}#mermaid-svg-bxmItz33TpDYvUAk .cluster-label span{color:#333;}#mermaid-svg-bxmItz33TpDYvUAk .cluster-label span p{background-color:transparent;}#mermaid-svg-bxmItz33TpDYvUAk .label text,#mermaid-svg-bxmItz33TpDYvUAk span{fill:#333;color:#333;}#mermaid-svg-bxmItz33TpDYvUAk .node rect,#mermaid-svg-bxmItz33TpDYvUAk .node circle,#mermaid-svg-bxmItz33TpDYvUAk .node ellipse,#mermaid-svg-bxmItz33TpDYvUAk .node polygon,#mermaid-svg-bxmItz33TpDYvUAk .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-bxmItz33TpDYvUAk .rough-node .label text,#mermaid-svg-bxmItz33TpDYvUAk .node .label text,#mermaid-svg-bxmItz33TpDYvUAk .image-shape .label,#mermaid-svg-bxmItz33TpDYvUAk .icon-shape .label{text-anchor:middle;}#mermaid-svg-bxmItz33TpDYvUAk .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-bxmItz33TpDYvUAk .rough-node .label,#mermaid-svg-bxmItz33TpDYvUAk .node .label,#mermaid-svg-bxmItz33TpDYvUAk .image-shape .label,#mermaid-svg-bxmItz33TpDYvUAk .icon-shape .label{text-align:center;}#mermaid-svg-bxmItz33TpDYvUAk .node.clickable{cursor:pointer;}#mermaid-svg-bxmItz33TpDYvUAk .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-bxmItz33TpDYvUAk .arrowheadPath{fill:#333333;}#mermaid-svg-bxmItz33TpDYvUAk .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-bxmItz33TpDYvUAk .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-bxmItz33TpDYvUAk .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-bxmItz33TpDYvUAk .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-bxmItz33TpDYvUAk .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-bxmItz33TpDYvUAk .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-bxmItz33TpDYvUAk .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-bxmItz33TpDYvUAk .cluster text{fill:#333;}#mermaid-svg-bxmItz33TpDYvUAk .cluster span{color:#333;}#mermaid-svg-bxmItz33TpDYvUAk 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-bxmItz33TpDYvUAk .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-bxmItz33TpDYvUAk rect.text{fill:none;stroke-width:0;}#mermaid-svg-bxmItz33TpDYvUAk .icon-shape,#mermaid-svg-bxmItz33TpDYvUAk .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-bxmItz33TpDYvUAk .icon-shape p,#mermaid-svg-bxmItz33TpDYvUAk .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-bxmItz33TpDYvUAk .icon-shape rect,#mermaid-svg-bxmItz33TpDYvUAk .image-shape rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-bxmItz33TpDYvUAk .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-bxmItz33TpDYvUAk .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-bxmItz33TpDYvUAk :root{–mermaid-font-family:\”trebuchet ms\”,verdana,arial,sans-serif;}

    开始

    环境准备

    切换 root 用户/确认 sudo 权限

    系统更新与升级:apt update && apt upgrade -y

    安装必要依赖包

    清理旧版本 Docker(若有)

    安装 Docker 核心组件

    下载 Docker 官方 GPG 密钥

    添加 Docker 官方软件源

    更新索引并安装 Docker 组件

    验证安装

    启动 Docker 服务:systemctl start docker

    运行 hello-world 镜像:docker run hello-world

    安装成功?

    排查问题(参考常见问题章节)

    配置镜像加速

    获取国内镜像加速地址

    编写 daemon.json 配置文件

    重载配置并重启 Docker

    验证加速配置生效

    配置开机自启

    完成,开始使用 Docker

    8.2 Docker 镜像拉取流程(含加速配置)

    #mermaid-svg-pq3E3lNuXKOAZWPY{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-pq3E3lNuXKOAZWPY .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-pq3E3lNuXKOAZWPY .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-pq3E3lNuXKOAZWPY .error-icon{fill:#552222;}#mermaid-svg-pq3E3lNuXKOAZWPY .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-pq3E3lNuXKOAZWPY .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-pq3E3lNuXKOAZWPY .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-pq3E3lNuXKOAZWPY .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-pq3E3lNuXKOAZWPY .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-pq3E3lNuXKOAZWPY .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-pq3E3lNuXKOAZWPY .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-pq3E3lNuXKOAZWPY .marker{fill:#333333;stroke:#333333;}#mermaid-svg-pq3E3lNuXKOAZWPY .marker.cross{stroke:#333333;}#mermaid-svg-pq3E3lNuXKOAZWPY svg{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-pq3E3lNuXKOAZWPY p{margin:0;}#mermaid-svg-pq3E3lNuXKOAZWPY .label{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;color:#333;}#mermaid-svg-pq3E3lNuXKOAZWPY .cluster-label text{fill:#333;}#mermaid-svg-pq3E3lNuXKOAZWPY .cluster-label span{color:#333;}#mermaid-svg-pq3E3lNuXKOAZWPY .cluster-label span p{background-color:transparent;}#mermaid-svg-pq3E3lNuXKOAZWPY .label text,#mermaid-svg-pq3E3lNuXKOAZWPY span{fill:#333;color:#333;}#mermaid-svg-pq3E3lNuXKOAZWPY .node rect,#mermaid-svg-pq3E3lNuXKOAZWPY .node circle,#mermaid-svg-pq3E3lNuXKOAZWPY .node ellipse,#mermaid-svg-pq3E3lNuXKOAZWPY .node polygon,#mermaid-svg-pq3E3lNuXKOAZWPY .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-pq3E3lNuXKOAZWPY .rough-node .label text,#mermaid-svg-pq3E3lNuXKOAZWPY .node .label text,#mermaid-svg-pq3E3lNuXKOAZWPY .image-shape .label,#mermaid-svg-pq3E3lNuXKOAZWPY .icon-shape .label{text-anchor:middle;}#mermaid-svg-pq3E3lNuXKOAZWPY .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-pq3E3lNuXKOAZWPY .rough-node .label,#mermaid-svg-pq3E3lNuXKOAZWPY .node .label,#mermaid-svg-pq3E3lNuXKOAZWPY .image-shape .label,#mermaid-svg-pq3E3lNuXKOAZWPY .icon-shape .label{text-align:center;}#mermaid-svg-pq3E3lNuXKOAZWPY .node.clickable{cursor:pointer;}#mermaid-svg-pq3E3lNuXKOAZWPY .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-pq3E3lNuXKOAZWPY .arrowheadPath{fill:#333333;}#mermaid-svg-pq3E3lNuXKOAZWPY .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-pq3E3lNuXKOAZWPY .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-pq3E3lNuXKOAZWPY .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-pq3E3lNuXKOAZWPY .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-pq3E3lNuXKOAZWPY .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-pq3E3lNuXKOAZWPY .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-pq3E3lNuXKOAZWPY .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-pq3E3lNuXKOAZWPY .cluster text{fill:#333;}#mermaid-svg-pq3E3lNuXKOAZWPY .cluster span{color:#333;}#mermaid-svg-pq3E3lNuXKOAZWPY 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-pq3E3lNuXKOAZWPY .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-pq3E3lNuXKOAZWPY rect.text{fill:none;stroke-width:0;}#mermaid-svg-pq3E3lNuXKOAZWPY .icon-shape,#mermaid-svg-pq3E3lNuXKOAZWPY .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-pq3E3lNuXKOAZWPY .icon-shape p,#mermaid-svg-pq3E3lNuXKOAZWPY .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-pq3E3lNuXKOAZWPY .icon-shape rect,#mermaid-svg-pq3E3lNuXKOAZWPY .image-shape rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-pq3E3lNuXKOAZWPY .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-pq3E3lNuXKOAZWPY .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-pq3E3lNuXKOAZWPY :root{–mermaid-font-family:\”trebuchet ms\”,verdana,arial,sans-serif;}

    网络超时

    镜像不存在

    权限问题

    发起镜像拉取命令:docker pull 镜像名

    Docker 客户端解析命令

    是否配置镜像加速器?

    从配置的国内加速器拉取镜像

    直接从 Docker Hub 拉取镜像

    拉取成功?

    镜像存储至本地仓库,供容器使用

    问题类型?

    更换镜像加速器,重试拉取

    检查镜像名称与标签是否正确

    确认用户是否在 docker 组,或使用 sudo

    9. 总结与拓展建议

    9.1 核心总结

    本文详细介绍了 Ubuntu 22.04 系统下 Docker 的完整安装流程,从环境准备、官方源安装、基础验证,到镜像加速配置、服务管理,覆盖了从部署到优化的全流程。关键要点如下:

    • Ubuntu 22.04 与 Docker 兼容性极佳,无需额外升级内核,按官方步骤安装即可稳定运行;

    • 安装前需清理旧版本 Docker 及残留文件,避免依赖冲突,确保环境纯净;

    • 国内用户必须配置镜像加速器,解决海外镜像拉取缓慢问题,推荐使用阿里云加速器;

    • 配置 Docker 开机自启,确保系统重启后服务自动恢复,适配生产环境需求。

    9.2 拓展建议

    完成 Docker 安装后,可进一步学习以下内容,提升容器化应用管理能力:

    • Docker Compose 实战:学习通过 docker-compose.yml 文件编排多容器应用(如 Nginx + MySQL + 后端服务),实现一键部署;

    • Docker 镜像制作:掌握 Dockerfile 编写方法,自定义应用镜像,优化镜像体积与安全性;

    • 容器网络与存储:了解 Docker 桥接网络、自定义网络配置,以及数据卷(Volume)使用,实现容器数据持久化;

    • 容器化部署实战:尝试将个人项目(如 Python、Java 应用)容器化,部署至 Ubuntu 22.04 系统,熟悉完整部署流程;

    • Kubernetes 入门:若需大规模容器集群管理,可进一步学习 Kubernetes(K8s),实现容器的自动化部署、扩展与运维。

    10. 相关资源链接

  • Docker 官方安装文档(Ubuntu 版)

  • 阿里云镜像加速器官方指南

  • Docker 官方文档(基础操作)

  • Docker Compose 官方文档

  • Ubuntu 22.04 官方文档(容器相关)

  • 在这里插入图片描述

    赞(0)
    未经允许不得转载:171主机测评 » Ubuntu 22.04 安装 Docker 完整步骤(附镜像加速配置)
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址