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

相关推荐
你好呀我是裤裤7 分钟前
Linux:指令大全(二)
linux·运维·服务器
丢丢丢丢丢丢~1 小时前
在 Debian/Ubuntu 系统上,永久固定网口的IP地址
运维·ubuntu·debian
fareast_mzh1 小时前
Running a Snowflake on Debian 11
linux·服务器·debian
zhangzhangkeji1 小时前
(9) 上:学习与验证 linux 里的 epoll 对象里的 EPOLLIN、 EPOLLHUP 与 EPOLLRDHUP 的不同
linux·网络·epoll 标志
我们的五年1 小时前
【Linux网络编程】:URL(encode),HTTP协议,telnet工具
linux·服务器·网络·c++·网络协议·http
biubiubiu07061 小时前
关于maven
java·linux·maven
苏-言1 小时前
Docker深度解析:部署 SpringBoot 项目
运维·docker·容器
大饼酥2 小时前
保姆级教程Docker部署Zookeeper官方镜像
分布式·docker·zookeeper·容器
狮歌~资深攻城狮2 小时前
Elasticsearch 就业形势
运维·jenkins
Roadinforest2 小时前
结合 vim-plug 安装并使用 Gruvbox 主题教程
linux·编辑器·vim