在服务器上安装 Docker

安装 Docker Engine

本节描述了如何在 Linux 上安装 Docker Engine,也称为 Docker 社区版(Docker CE)。

支持的平台

平台 x86_64 / amd64 arm64 / aarch64 arm (32-bit) ppc64le s390x
CentOS
Debian
Fedora
Raspberry Pi OS (32-bit)
RHEL
SLES
Ubuntu
二进制文件

一、在 CentOS/RHEL 上安装 Docker Engine 的步骤如下:

1.准备工作

1.1 卸载旧版本

在安装 Docker Engine 之前,您需要卸载任何冲突的包。运行以下命令以卸载所有冲突的包:

bash 复制代码
sudo dnf remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

请注意,dnf 可能会报告您没有安装这些包。

存储在 /var/lib/docker/ 中的镜像、容器、卷和网络不会在您卸载 Docker 时自动删除。

2.安装方法

2.1 设置仓库

安装 dnf-plugins-core 包(它提供了管理 DNF 仓库的命令)并设置仓库:

bash 复制代码
sudo dnf -y install dnf-plugins-core
bash 复制代码
sudo yum install -y yum-utils

根据系统选择对应的命令

  • CentOS
    bash yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

  • RHEL
    bash yum-config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo

国内可设置清华大学开源软件镜像加速下载(可选)

bash 复制代码
sudo sed -i 's+https://download.docker.com+https://mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo
2.2 安装 Docker Engine

安装最新的 Docker 包:

bash 复制代码
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

启动 Docker Engine:

bash 复制代码
sudo systemctl start docker

如果您希望在您启动系统时自动启动 Docker,请使用

bash 复制代码
sudo systemctl enable --now docker

二、在 Ubuntu/Debian/Raspbian 上安装 Docker Engine 的步骤如下:

1.准备工作

1.1 卸载旧版本

在安装 Docker Engine 之前,您需要卸载任何冲突的包。运行以下命令以卸载所有冲突的包:

bash 复制代码
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

此外,如果您之前已经安装了 containerd.iorunc,也请一并卸载,以免与 Docker Engine 捆绑的版本发生冲突。

2.安装方法

2.1 设置 Docker 仓库
  • 添加 Docker 的官方 GPG 密钥:

    bash 复制代码
    sudo apt-get update
    bash 复制代码
    sudo apt-get install ca-certificates curl gnupg
    bash 复制代码
    sudo install -m 0755 -d /etc/apt/keyrings

    根据系统选择对应的命令

    • Ubuntu

      bash 复制代码
      curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
    • Debian

      bash 复制代码
      curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
    • Raspbian

      bash 复制代码
      curl -fsSL https://download.docker.com/linux/raspbian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
    bash 复制代码
    sudo chmod a+r /etc/apt/keyrings/docker.gpg
  • 将仓库添加到 Apt 源列表中:

    根据系统选择对应的命令

    • Ubuntu

      bash 复制代码
      echo \
        "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
        "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
         sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    • Debian

      bash 复制代码
      echo \
        "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian \
        "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
         sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    • Raspbian

      bash 复制代码
      echo \
        "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/raspbian \
        "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
         sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    bash 复制代码
    sudo apt-get update
2.2 安装 Docker 包

要安装最新版本,请运行:

bash 复制代码
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

三、在 Fedora 上安装 Docker Engine 的步骤如下:

1.准备工作

1.1 卸载旧版本

在安装 Docker Engine 之前,您需要卸载任何冲突的包。运行以下命令以卸载所有冲突的包:

bash 复制代码
sudo dnf remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine

请注意,dnf 可能会报告您没有安装这些包。

存储在 /var/lib/docker/ 中的镜像、容器、卷和网络不会在您卸载 Docker 时自动删除。

2.安装方法

2.1 设置仓库

安装 dnf-plugins-core 包(它提供了管理 DNF 仓库的命令)并设置仓库:

bash 复制代码
sudo dnf -y install dnf-plugins-core
bash 复制代码
sudo dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo

国内可设置清华大学开源软件镜像加速下载(可选)

bash 复制代码
sudo sed -i 's+https://download.docker.com+https://mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo
2.2 安装 Docker Engine

安装最新的 Docker 包:

bash 复制代码
sudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

启动 Docker Engine:

bash 复制代码
sudo systemctl start docker

如果您希望在您启动系统时自动启动 Docker,请使用

bash 复制代码
sudo systemctl enable --now docker

四、验证安装

验证安装是否成功,可以运行一个简单的镜像 hello-world

bash 复制代码
sudo docker run hello-world

此命令下载一个测试镜像并在容器中运行它。当容器运行时,它会打印一条确认信息然后退出。

至此,您已成功安装并启动了 Docker Engine。

相关推荐
乘云数字DATABUFF18 小时前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
Patrick_Wilson1 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
Suroy2 天前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭2 天前
运行你的第一个Docker容器
后端·docker·容器
荣--3 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森3 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
宋均浩3 天前
# Docker 镜像瘦身实战:从 1.2G 到 80MB 的五个优化步骤
ci/cd·docker
Avan_菜菜3 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
程序员老赵3 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程
WangMingHua1114 天前
LM Studio Docker 部署——本地大模型一键启动
docker