Linux 系统上安装 Docker 方法详解与比较

Docker 是现代 DevOps 和容器化应用开发的重要工具,它简化了应用的部署和管理流程。本文将详细介绍在 Linux 系统上安装 Docker 的多种方法,并对它们的适用场景、优缺点进行对比,确保读者能够根据自身需求选择最优方案。

1. 官方推荐的安装方法

Docker 官方提供了基于 APT(Debian/Ubuntu)、DNF/YUM(RHEL/CentOS/Fedora)和 Zypper(openSUSE)的安装方法。这些方法通常提供了最新的稳定版本,适用于生产环境。

1.1 使用官方 APT 源安装 Docker(适用于 Debian/Ubuntu)

步骤
bash 复制代码
sudo apt update
sudo apt install -y ca-certificates curl gnupg

# 添加 Docker 官方 GPG 密钥
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo tee /etc/apt/keyrings/docker.asc > /dev/null
sudo chmod a+r /etc/apt/keyrings/docker.asc

# 添加 Docker APT 源
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
优缺点

优点

  • 直接使用官方提供的最新稳定版。
  • 适用于生产环境,长期支持(LTS)版本更新较快。
  • 依赖管理较为完善。

缺点

  • 需要手动配置 Docker 官方源。
  • 依赖于 APT 包管理器,可能与系统的默认软件仓库版本冲突。

1.2 使用官方 YUM/DNF 源安装 Docker(适用于 RHEL/CentOS/Fedora)

步骤
bash 复制代码
sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
优缺点

优点

  • 直接安装最新的官方稳定版。
  • 适用于生产环境,官方维护更新。

缺点

  • 依赖于 Docker 官方 YUM 源。
  • 在 RHEL 上需要额外配置(默认使用 Podman )。

2. 使用 Snap 安装 Docker(适用于 Ubuntu)

Snap 是 Ubuntu 生态下流行的通用包管理工具,可以用来安装 Docker。

步骤
bash 复制代码
sudo snap install docker
优缺点

优点

  • 适用于 Ubuntu 及其衍生版本。
  • 独立于系统包管理器,避免软件冲突。

缺点

  • 由于 Snap 的沙盒机制,某些功能可能受限。
  • 版本更新可能不如官方 APT 源及时。

3. 使用二进制包安装 Docker

对于不希望使用包管理器,或希望完全控制安装过程的用户,可以直接下载安装官方提供的二进制包。

步骤
bash 复制代码
curl -fsSL https://download.docker.com/linux/static/stable/x86_64/docker-24.0.6.tgz -o docker.tgz
tar xzvf docker.tgz
sudo mv docker/* /usr/bin/
优缺点

优点

  • 无需依赖包管理器,适用于嵌入式系统或精简环境。
  • 可用于离线安装。

缺点

  • 需要手动管理依赖和更新。
  • 适合高级用户,配置难度较大。

4. 使用 Docker 官方安装脚本

Docker 官方提供了一键安装脚本,适用于快速安装测试环境。

步骤
bash 复制代码
curl -fsSL https://get.docker.com | sudo bash
优缺点

优点

  • 安装过程自动化,省去配置步骤。
  • 适用于快速搭建开发环境。

缺点

  • 不适用于生产环境,缺乏细粒度控制。
  • 可能会安装不符合系统最佳实践的依赖。

5. 使用 Podman 作为 Docker 替代方案(无 root 权限)

在某些发行版(如 Fedora)中,Podman 被推荐作为 Docker 的替代方案。Podman 提供与 Docker 兼容的 CLI,支持无 root 权限运行。

安装步骤(适用于 Fedora)
bash 复制代码
sudo dnf install -y podman
优缺点

优点

  • 无需 root 权限,安全性更高。
  • 轻量级,与 OCI 标准兼容。

缺点

  • 生态支持不如 Docker 强。
  • 部分 Docker 依赖的工具可能不兼容。

6. 不同安装方法对比总结

安装方法 适用系统 适用场景 优点 缺点
官方 APT Debian/Ubuntu 生产环境 稳定可靠,官方支持 需手动配置源
官方 YUM RHEL/CentOS/Fedora 生产环境 官方维护,长期支持 需要额外配置
Snap Ubuntu 开发环境 免去依赖冲突 可能受限于 Snap 沙盒
二进制包 所有 Linux 高度定制 无需包管理器 需手动更新管理
官方脚本 所有 Linux 快速测试 一键安装 生产环境不推荐
Podman Fedora/RHEL 安全环境 无 root 权限 生态支持较弱

7. 结论

在 Linux 系统上安装 Docker 主要有几种方式:

  • 官方包管理器安装(APT/YUM):适用于生产环境,官方推荐,更新稳定。
  • Snap 安装:适用于 Ubuntu 生态,方便管理但受限于沙盒。
  • 二进制包安装:适用于精简环境,灵活但维护成本高。
  • 官方脚本:适用于测试环境,快速但不推荐用于生产。
  • Podman 替代方案:适用于对安全性要求高的场景。

建议生产环境优先选择 官方包管理器安装 ,开发和测试环境可考虑 Snap 或官方脚本 ,对安全性有额外要求的用户可使用 Podman

相关推荐
FL171713141 小时前
UR5e机器人Matlab仿真
linux·matlab·机器人
不知几秋5 小时前
数字取证-内存取证(volatility)
java·linux·前端
小声读源码6 小时前
【技巧】离线安装docker镜像的方法
docker·镜像·技巧·离线
欧先生^_^8 小时前
Linux内核可配置的参数
linux·服务器·数据库
海尔辛9 小时前
学习黑客5 分钟读懂Linux Permissions 101
linux·学习·安全
王RuaRua9 小时前
[数据结构]5. 栈-Stack
linux·数据结构·数据库·链表
曼岛_10 小时前
[架构之美]linux常见故障问题解决方案(十九)
linux·运维·架构
tan180°10 小时前
Linux进程信号处理(26)
linux·c++·vscode·后端·信号处理
大神的风范10 小时前
从0开始学linux韦东山教程第三章问题小结(4)
linux·服务器
sz66cm10 小时前
Linux基础 -- SSH 流式烧录与压缩传输笔记
linux·笔记·ssh