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。

相关推荐
且从容.2 小时前
Ubuntu安装flume
linux·ubuntu·flume
承渊政道2 小时前
Linux网络学习【Reactor反应堆模式】
linux·网络·学习·ubuntu·reactor
讯捷蓝达4 小时前
戴尔R720xd服务器卡死在 “Configuring Memory...Done“,换了内存还是卡?问题根本不在内存
运维·服务器
且从容.5 小时前
ubuntu安装flink
linux·ubuntu·flink
爱和冰阔落7 小时前
【Linux网络】TCP 服务器如何并发处理多个客户端?从 fork、僵尸进程到双重 fork
linux·运维·服务器·网络
程序员沉梦听雨7 小时前
WSL2的安装与使用
linux·wsl
微小的鱼7 小时前
Linux的渲染与显示系统链路
android·java·linux
lisanmengmeng7 小时前
alertmanger 标签 rules 打上分组标签
linux·运维·服务器
Android系统攻城狮8 小时前
Linux FFmpeg深度解析之av_write_frame调用流程与实战(三十三)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
上火的金鱼妹8 小时前
k8s生产实际问题排查(网关,数据库读写等)
运维·服务器