news 2026/5/8 23:32:49

Ubuntu22.04 安装 Docker 及 Docker Compose v2 详细教程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Ubuntu22.04 安装 Docker 及 Docker Compose v2 详细教程

本文针对 Ubuntu 22.04 LTS 系统,提供 Docker 引擎与 Docker Compose v2 的完整安装步骤,重点解决中国网络环境下的镜像拉取慢、依赖安装失败等问题,同时包含环境验证、基础配置及常见错误排查,适合 Java 后端开发、DevOps 工程师及容器化部署初学者。

一、前置准备

1.1 系统更新与依赖安装

首先更新系统包索引,安装 Docker 所需的依赖工具(如 apt-transport-https、ca-certificates 等),确保后续安装顺利。

# 更新系统包索引sudoaptupdate -y# 安装必要依赖,允许 apt 通过 HTTPS 使用仓库sudoaptinstall-y apt-transport-https ca-certificatescurlsoftware-properties-common gnupg lsb-release

1.2 关闭防火墙(可选,避免端口拦截)

Ubuntu 22.04 默认启用 ufw 防火墙,若后续容器端口映射无法访问,可临时关闭(生产环境建议按需开放端口,而非直接关闭)。

# 关闭 ufw 防火墙sudoufw disable# 验证防火墙状态(显示 inactive 即为关闭)sudoufw status

二、安装 Docker 引擎

2.1 配置 Docker 官方 GPG 密钥

导入 Docker 阿里云镜像源的密钥,确保软件包的真实性。

curl-fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg|sudogpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

2.2 添加 Docker 软件源(优先阿里云镜像源)

默认官方源在国内访问较慢,此处直接配置阿里云 Docker 镜像源,提升安装速度。

# 添加阿里云 Docker 源到系统源列表echo"deb [arch=$(dpkg --print-architecture)signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu$(lsb_release -cs)stable"|sudotee/etc/apt/sources.list.d/docker.list>/dev/null

2.3 安装 Docker Engine

更新包索引后,安装最新版 Docker Engine(包含 docker-ce、docker-ce-cli、containerd.io)。

# 再次更新包索引(使 Docker 源生效)sudoaptupdate -y# 安装 Docker Enginesudoaptinstall-y docker-ce docker-ce-cli containerd.io

2.4 验证 Docker 安装成功

启动 Docker 服务并运行 hello-world 容器,验证 Docker 引擎是否正常工作。

# 启动 Docker 服务并设置开机自启sudosystemctl startdockersudosystemctlenabledocker# 验证 Docker 服务状态(显示 active (running) 即为正常)sudosystemctl statusdocker# 运行 hello-world 容器(拉取测试镜像并启动)sudodockerrun hello-world

若输出Hello from Docker!相关信息,说明 Docker 安装成功。

2.5 配置 Docker 镜像加速(解决拉取慢问题)

为 Docker 配置国内镜像加速器(阿里云、网易云均可),大幅提升镜像拉取速度。以阿里云为例:

  1. 登录 阿里云容器镜像服务(需注册阿里云账号),在「镜像工具」-「镜像加速器」中获取专属加速地址(每个人的地址不同)。

  2. 创建 Docker 配置目录并编写加速配置文件:

# 创建 Docker 配置目录sudomkdir-p /etc/docker# 编写镜像加速配置(替换为你的阿里云加速地址)sudotee/etc/docker/daemon.json<<-'EOF' { "registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"] } EOF# 重启 Docker 服务使配置生效sudosystemctl daemon-reloadsudosystemctl restartdocker

验证加速配置是否生效:

sudodockerinfo|grep"Registry Mirrors"

若输出配置的加速地址,说明配置成功。

2.6 配置非 root 用户运行 Docker(可选)

默认情况下,只有 root 用户和 docker 组用户可运行 Docker 命令,为避免每次输入 sudo,可将当前用户加入 docker 组:

# 将当前用户加入 docker 组sudousermod-aGdocker$USER# 注销当前用户并重新登录(使权限生效)# 重新登录后验证(无需 sudo 运行 docker 命令)dockerinfo

三、安装 Docker Compose v2

3.1 配置Docker阿里软件源

由于你已安装Docker,先更新Docker软件源为阿里源,保证docker-compose-plugin包可正常获取:

  1. 安装必要依赖包
sudo apt update && sudo apt install -y ca-certificates curl gnupg lsb-release
  1. 添加阿里Docker官方GPG密钥
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
  1. 配置阿里Docker软件源(替换原有源)
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  1. 更新软件包索引
sudo apt update

3.2、核心步骤:安装Docker Compose v2插件(docker-compose-plugin

Docker Compose v2在Ubuntu软件源中以docker-compose-plugin包的形式提供,直接通过apt安装即可(阿里源已配置,无需额外下载):

sudo apt install -y docker-compose-plugin

3.3、(可选)优化:配置命令别名(兼容v1习惯)

如果你习惯使用v1的docker-compose(带短横线)命令,可以添加别名实现兼容,无需修改原有操作习惯:

  1. 临时别名(仅当前终端有效)
alias docker-compose='docker compose'
  1. 永久别名(所有终端、重启后仍有效)
# 写入用户环境变量配置文件 echo "alias docker-compose='docker compose'" >> ~/.bashrc # 生效配置(如果使用zsh,替换为 source ~/.zshrc) source ~/.bashrc

配置完成后,即可使用docker-compose version验证别名是否生效。

四、Docker Compose v2 基础使用示例

以运行一个简单的 Nginx 容器为例,演示 Docker Compose v2 的使用流程。

# 创建示例目录并进入mkdir-p ~/docker-compose-demo&&cd~/docker-compose-demo# 创建 docker-compose.yml 文件teedocker-compose.yml<<-'EOF' version: '3.8' services: nginx: image: nginx:latest ports: - "8080:80" volumes: - ./nginx/html:/usr/share/nginx/html restart: always EOF# 创建 Nginx 静态文件目录并添加测试页面mkdir-p ./nginx/htmlecho"<h1>Docker Compose v2 Test (Ubuntu22.04)</h1>">./nginx/html/index.html# 启动容器(后台运行)docker-composeup -d# 验证容器状态docker-composeps# 访问测试(本地访问或远程访问服务器 IP:8080)curlhttp://localhost:8080

若输出<h1>Docker Compose v2 Test (Ubuntu22.04)</h1>,说明 Docker Compose 运行正常。后续可通过docker-compose down停止并删除容器。

五、补充说明

  1. Docker Compose v2的配置文件仍支持docker-compose.yml(或docker-compose.yaml),功能与v1完全兼容且性能更优;

  2. 若安装过程中提示包不存在,可重新执行sudo apt update刷新软件源索引后重试;

  3. 阿里源的docker-ce仓库已包含最新版docker-compose-plugin,无需额外手动下载二进制文件。

六、总结

本文完成了 Ubuntu22.04 系统下 Docker 引擎与 Docker Compose v2 的完整安装,核心优化了中国网络环境下的镜像源和加速配置,同时覆盖了权限配置、基础使用及常见问题排查。后续可结合实际业务场景,使用 Docker Compose 编排微服务容器,提升部署效率。若需进一步配置 Docker 集群(如 Swarm)或集成 CI/CD 流程,可参考官方文档或相关技术教程。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/5 13:12:10

Python高手都在用的自动化技巧(Selenium模拟登录实战案例)

第一章&#xff1a;Python高手都在用的自动化技巧&#xff08;Selenium模拟登录实战案例&#xff09; 在现代Web自动化测试与数据采集场景中&#xff0c;Selenium因其强大的浏览器操控能力成为Python开发者的首选工具。通过模拟真实用户操作&#xff0c;Selenium能够处理JavaSc…

作者头像 李华
网站建设 2026/4/24 10:23:44

PyTorch GPU版本安装秘籍:资深AI工程师压箱底的4条命令

第一章&#xff1a;PyTorch GPU版本安装前的环境评估 在部署 PyTorch 的 GPU 版本前&#xff0c;必须对系统环境进行全面评估&#xff0c;以确保 CUDA 驱动、兼容的显卡以及必要的依赖库均已正确配置。错误的环境配置是导致 GPU 无法识别或运行失败的主要原因。 确认 NVIDIA 显…

作者头像 李华
网站建设 2026/4/30 15:30:26

医院HIS系统如何与WordPress集成实现病历公式转存?

要求&#xff1a;开源&#xff0c;免费&#xff0c;技术支持 博客&#xff1a;WordPress 开发语言&#xff1a;PHP 数据库&#xff1a;MySQL 功能&#xff1a;导入Word,导入Excel,导入PPT(PowerPoint),导入PDF,复制粘贴word,导入微信公众号内容,web截屏 平台&#xff1a;Window…

作者头像 李华
网站建设 2026/5/5 14:44:54

AI生成广告文案的合规挑战与测试框架

随着AI技术在广告领域的广泛应用&#xff0c;AI生成的广告文案已渗透品牌营销全流程&#xff0c;从产品描述到社交媒体推广。然而&#xff0c;合规风险随之剧增&#xff1a;虚假宣传、违禁词滥用、版权侵权等问题频发&#xff0c;可能导致法律处罚和品牌声誉损失。例如&#xf…

作者头像 李华
网站建设 2026/5/6 5:39:39

Python拷贝机制深度揭秘,资深架构师教你避开面试中的隐藏陷阱

第一章&#xff1a;Python拷贝机制的核心概念在Python中&#xff0c;对象的拷贝操作是数据处理和程序设计中的关键环节。由于Python中一切皆为对象&#xff0c;变量实际上是对对象的引用&#xff0c;因此直接赋值并不会创建新对象&#xff0c;而是增加了一个指向同一对象的引用…

作者头像 李华