当前位置: 首页 > news >正文

【零基础部署】Ubuntu 安装 Docker 保姆级教程

Docker 是当今最流行的容器化平台之一,它能让你把应用及其依赖打包到一个轻量级的容器中运行。无论你是想搭建开发环境、部署服务,还是学习云原生技术,Docker 都是必备技能。本文将手把手带你从零开始,在 Ubuntu 系统上完成 Docker 的安装与配置。

1. 适用范围与前置条件

本教程适用于 Ubuntu 20.04、22.04 和 24.04 等主流 LTS 版本。开始之前,请确保你满足以下条件:

  • 拥有一台安装了 Ubuntu 系统的电脑或服务器
  • 拥有sudo权限(即管理员权限)
  • 拥有稳定的网络连接

如果你使用的是云服务器,一般默认就具备sudo权限,直接连接终端即可操作。

2. 卸载旧版本 Docker

如果你之前安装过旧版 Docker 或相关组件,建议先将其卸载,避免版本冲突。如果从未安装过,这一步也可以执行,不会有任何影响。

sudoaptremovedockerdocker-engine docker.io containerd runc

执行完成后,系统中残留的旧版 Docker 相关包会被清理干净。

3. 安装必要的依赖包

在添加 Docker 官方源之前,需要先安装一些基础工具,它们能帮助系统安全地访问和管理软件仓库。

sudoaptupdatesudoaptinstall-yapt-transport-https ca-certificatescurlsoftware-properties-common

这几个包的作用分别是:

  • apt-transport-https:让 APT 能通过 HTTPS 协议访问软件源
  • ca-certificates:提供 CA 证书,确保下载安全
  • curl:命令行下载工具,后续添加 GPG 密钥时会用到
  • software-properties-common:提供管理软件源的辅助工具

4. 添加 Docker 官方 GPG 密钥

GPG 密钥用于验证从 Docker 官方仓库下载的软件包是否被篡改,是保障安全性的重要步骤。

curl-fsSLhttps://download.docker.com/linux/ubuntu/gpg|sudoapt-keyadd-

如果终端返回OK,说明密钥添加成功。

注意:在较新的 Ubuntu 版本中,apt-key已被标记为过时。但目前它仍然可以正常工作。如果你希望使用更现代的方式,可以将密钥存放到/etc/apt/keyrings/目录下,后续步骤会用到此路径。

5. 添加 Docker APT 软件源

接下来需要将 Docker 官方仓库添加到系统的软件源列表中,这样你才能通过apt install来安装最新版 Docker。

echo"deb [arch=$(dpkg --print-architecture)signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu$(lsb_release-cs)stable"|sudotee/etc/apt/sources.list.d/docker.list>/dev/null

这条命令会自动识别你的系统架构(amd64 或 arm64)和 Ubuntu 版本代号(如 jammy、noble),无需手动修改。

如果你在上一步使用了apt-key add,也可以用以下简化版本:

sudoadd-apt-repository"deb [arch=$(dpkg --print-architecture)] https://download.docker.com/linux/ubuntu$(lsb_release-cs)stable"

添加完成后,更新一下软件包索引:

sudoaptupdate

6. 安装 Docker 及相关组件

现在可以正式安装 Docker 了。以下命令会安装 Docker 引擎、CLI 客户端、containerd 运行时,以及 BuildKit 构建工具和 Docker Compose 插件。

sudoaptinstall-ydocker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

各组件说明:

  • docker-ce:Docker 社区版引擎(Community Edition),核心组件
  • docker-ce-cli:Docker 命令行工具,用来执行各种 Docker 命令
  • containerd.io:容器运行时,负责实际的容器生命周期管理
  • docker-buildx-plugin:增强的构建插件,支持多平台构建
  • docker-compose-plugin:Docker Compose 插件,用于编排多容器应用

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

安装完成后,需要手动启动 Docker 服务,并将其设置为开机自动启动,这样每次重启服务器后 Docker 都能自动运行。

sudosystemctl startdockersudosystemctlenabledocker

你可以用以下命令检查 Docker 服务的运行状态:

sudosystemctl statusdocker

如果看到active (running)字样,说明 Docker 已经成功启动。

8. 将当前用户添加到 docker 组

默认情况下,执行 Docker 命令需要sudo权限。为了方便日常使用,可以将当前用户添加到docker用户组,这样以后使用 Docker 就不再需要输入sudo

sudousermod-aGdocker$USER

执行后需要注销并重新登录才能生效。如果你是通过 SSH 连接的服务器,退出后重新连接即可。

⚠️ 注意:将用户加入docker组等同于赋予其 root 级别的容器操作权限,请确保你信任该用户。在生产环境中要谨慎使用。

重新登录后,你可以不加sudo直接执行 Docker 命令来验证:

dockerps

如果没有报错permission denied,说明配置成功。

9. 配置国内镜像加速

由于 Docker 默认的镜像仓库(Docker Hub)位于海外,在国内拉取镜像时速度可能很慢甚至无法连接。配置国内镜像加速器可以显著提升镜像下载速度。

编辑或创建 Docker 的配置文件:

sudomkdir-p/etc/dockersudotee/etc/docker/daemon.json<<-'EOF' { "registry-mirrors": [ "https://docker.xuanyuan.me", "https://docker.1ms.run", "https://docker.m.daocloud.io" ] } EOF

这里配置了三个国内镜像源,Docker 会按顺序尝试使用。如果某个镜像不可用,会自动切换到下一个。

配置完成后,需要重启 Docker 服务使配置生效:

sudosystemctl daemon-reloadsudosystemctl restartdocker

10. 验证安装是否成功

万事俱备,让我们运行一个测试容器来验证 Docker 是否安装成功。

dockerrun hello-world

如果看到类似以下的输出信息,恭喜你,Docker 已经安装成功!

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

这条命令的工作原理是:Docker 会自动从镜像仓库拉取hello-world镜像,创建一个容器并运行,容器会打印一段欢迎信息后自动退出。

你还可以用以下命令确认 Docker 版本和系统信息:

dockerversiondockerinfo

11. 常见问题排查

Q:执行docker run hello-world时提示permission denied怎么办?

A:说明你还没有将用户添加到docker组,或者添加后还没有重新登录。请确认已执行sudo usermod -aG docker $USER,并注销重新登录。

Q:拉取镜像时一直超时怎么办?

A:请检查是否正确配置了镜像加速器(参见第 9 步)。配置完成后记得重启 Docker 服务。如果仍然超时,可以尝试更换其他镜像源。

Q:提示Unable to locate package docker-ce怎么办?

A:说明 Docker 软件源没有正确添加。请检查/etc/apt/sources.list.d/目录下是否有docker.list文件,并确认文件内容中的 Ubuntu 版本代号是否正确。运行lsb_release -cs可以查看当前系统的代号。

12. 总结

到这里,你已经完成了 Ubuntu 上 Docker 的完整安装与配置。让我们回顾一下关键步骤:

  1. 卸载旧版本,避免冲突
  2. 安装基础依赖工具
  3. 添加 Docker 官方 GPG 密钥和软件源
  4. 安装 Docker 引擎及相关组件
  5. 启动服务并设置开机自启
  6. 将用户添加到docker组以简化操作
  7. 配置国内镜像加速,提升下载速度
  8. 运行hello-world验证安装

接下来,你可以开始学习 Docker 的核心操作,比如拉取镜像、运行容器、编写 Dockerfile 等。祝你容器化之旅愉快!

http://www.jsqmd.com/news/809649/

相关文章:

  • 连云港黄金回收哪家不踩坑?实测4家实体门店,金福楼/道诚等靠谱之选(2026最新) - 润富黄金珠宝行
  • 如何永久免费解锁Cursor Pro功能:cursor-free-vip完整使用指南
  • 2026桂林书法培训机构推荐 - 资讯焦点
  • 以技术为核心,Captain AI构建OZON智能运营技术体系
  • AnySearch正式发布:为 AI Agent 构建的下一代搜索基础设施,重构搜索底层逻辑
  • 3PEAK思瑞浦 TPA3530-SO1R SOP8 运算放大器
  • 5分钟快速激活:Adobe-GenP通用补丁工具完整指南
  • 工业机器人轴承厂家哪家好?从人形关节到RV减速机品牌推荐 - 品牌2025
  • 生物 -- 神经系统(三)
  • OBS多平台同步推流解决方案:架构设计与技术实现深度解析
  • 3分钟打造你的个人数字图书馆:novel-downloader全网小说下载终极指南
  • 5分钟免费汉化Axure RP:中文界面终极指南让原型设计更高效
  • Maven deploy到Nexus老报401?手把手教你排查settings.xml与pom.xml配置的“神坑”
  • 哪个降AI率系统好用?实测2026主流降AI工具,真实aigc检测数据揭秘! - AI论文先行者
  • NotebookLM API性能压测实录:单实例QPS突破87后,内存泄漏定位与gRPC连接池调优的终极方案
  • 成都短视频代运营哪家强?揭秘TOP3公司实力排名! - 博客万
  • 2026主流机票查询APP有哪些,一篇看懂所有选择
  • APK Installer:在Windows上无缝运行安卓应用的专业解决方案
  • DS4Windows终极指南:在Windows上完美使用PS4手柄的5个关键功能
  • 5分钟掌握Understat:免费获取专业足球数据的终极指南
  • 【算法】小白也能懂 · 第 7 节:排序算法入门(冒泡、选择、插入)
  • 阿里云昨天上线团队版 Token Plan
  • GEO代理商公司 - 企业推荐官【官方】
  • 【Oracle数据库指南】第29篇:Oracle控制文件的备份、恢复与重建
  • 轻松导出浏览器Cookie的免费实用工具:Get-cookies.txt-LOCALLY完整指南
  • 3分钟快速上手:用novel-downloader轻松下载200+小说网站的终极指南
  • STM32F103+EC200S Cat.1模块实战:从AT指令到TCP通信的完整避坑指南
  • 知识图谱与检索增强的实战结合
  • 开源订单流分析库quant-flow:量化交易中的市场微观结构洞察利器
  • 2026年洛阳特色柴火鸡与土鸡汤品牌深度测评:从龙门石窟到你的餐桌 - 企业名录优选推荐