Linux Mint 部署 Docker 指南

pEt4qOO.png

前言

之前都是在服务器上部署 WordPress ,最近把小电脑刷成了 Linux Mint 系统之后,就在想本地部署 WordPress 然后使用 Cloudflare 隧道内网穿透出去当博客。

不过有了桌面环境再装 1Panel 感觉有点抽象,又不想用以前 XAMPP 那套折腾,于是决定使用 Docker ……然后又折腾了好久。

所以诞生了这篇教程:专门针对 Linux Mint 系统的 Docker 部署指南,包含镜像加速和常见问题解决方案。


阶段 1:系统准备

1.1 更新软件源

sudo apt update

🔍 作用:刷新本地软件包索引,确保后续安装的都是最新版本依赖

1.2 安装基础依赖

sudo apt install apt-transport-https ca-certificates curl gnupg

🔧 作用:建立安全的软件包传输通道和加密验证体系

📦 组件说明:

  • apt-transport-https:支持通过HTTPS协议访问仓库(安全传输基础)
  • ca-certificates:SSL证书支持(防止中间人攻击)
  • curl:命令行下载工具(后续密钥获取必需)
  • gnupg:GNU隐私保护工具(软件包签名验证)

阶段 2:安全配置

2.1 添加 Docker 官方 GPG 密钥

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

🔐 作用:建立可信软件源认证体系

💡 技术细节:

--dearmor 参数将ASCII格式密钥转换为二进制格式,增强密钥存储安全性

2.2 查看 Linux Mint 版本对应的 Ubuntu 系统代号

Linux Mint 是基于 Ubuntu 开发,但是和 Ubuntu 有一定区别。例如在安装 Docker 时,很多教程里会写.../ubuntu $(lsb_release -cs) stable,但是在 Linux Mint 中安装 Docker 这么使用会报错。因为该指令只能获取 Linux Mint 的代号,而不是对应 Ubuntu 的代号。

例如 Mint 22.1 使用lsb_release -cs获取结果为xia,直接使用的话,会报错:

E: 仓库 “https://download.docker.com/linux/ubuntu xia Release” 没有 Release 文件。
N: 无法安全地用该源进行更新,所以默认禁用该源。
N: 参见 apt-secure(8) 手册以了解仓库创建和用户配置方面的细节。

所以需要将其中的xia改为对应的 Ubuntu 代号。想要查看对应的 Ubuntu 代号,可以进入 Linux Mint 官网,点开 Download 下的 All Versions,在表格中找到自己的 Mint 版本,查看并记录 Package base 一栏的 Ubuntu 代号,注意只需要 Ubuntu 之后的文字,且需要全部小写。

pENyhUP.png

例如 Mint 22.1 是基于 Ubuntu Noble 开发的,所以对应的 Ubuntu 代号为:noble。

2.3 配置APT软件源

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu [对应Ubuntu系统代号] stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

🔧 作用:创建专用软件源配置文件,隔离Docker安装源

⚠️ 注意:其中[对应Ubuntu系统代号]需要填入2.2节中查到的 Ubuntu 代号,但是只需要 Ubuntu 之后的文字,且需要全部小写。例如系统版本为 Mint 22.1 时,此处应该填写noble。

📌 参数解析:

  • arch=$(dpkg --print-architecture):自动适配CPU架构(x86_64/arm64等)
  • signed-by:指定密钥验证路径(安全机制核心)

2.4 手动修正源文件

如果在之前的安装过程中,已经使用.../ubuntu $(lsb_release -cs) stable写入了docker.list文件,此时也可以手动修改源文件,达到同样的效果。

sudo nano /etc/apt/sources.list.d/docker.list

📔 注意:其中nano可以换成任何你喜欢的文本编辑器。

✏️ 修改示例:xia==>noble

原始内容:

... https://download.docker.com/linux/ubuntu xia stable

修改后(根据实际Ubuntu基础版本):

... https://download.docker.com/linux/ubuntu noble stable

阶段 3:安装核心组件

3.1 刷新软件源

sudo apt update

🔧 作用:使新配置的Docker软件源生效

3.2 安装Docker套件

sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

🔧 作用:安装完整的容器化生态组件,并启用服务。

📦 组件说明:

  • docker-ce:Docker 引擎本身。
  • docker-ce-cli:一个命令行工具,可让您与 Docker 守护进程对话。
  • containerd.io:管理容器生命周期的容器运行时。
  • docker-buildx-plugin:这个针对Docker的扩展增强了构建镜像的能力,主要关注多平台构建。
  • docker-compose-plugin:一个配置管理插件,可帮助使用单个 YAML 文件管理多容器 Docker 应用程序。

3.3 检查服务状态

sudo systemctl is-active docker

✅ 如果正确安装,那么该命令会返回:active


阶段 4:网络优化

4.1 配置镜像加速器

因为某些原因,国内主流镜像加速服务已陆续关闭,正常的配置镜像服务器的方法已经无法顺利拉取镜像,所以需要别的方法。

此处推荐这篇文章,写的很全面,此处建议使用文章中的方法四。我个人是使用朋友部署的 DockerHub 作为源的(即方法四),所以就没有自己部署。

在部署完毕之后,修改 Linux Mint 系统中的配置文件:

sudo nano /etc/docker/daemon.json

在配置文件中增加以下内容:

{
  "registry-mirrors": [
    "https://docker.xxxxxxxx" # 请替换为你自己的Worker自定义域名
  ]
}

4.2 应用配置

sudo systemctl daemon-reload && sudo systemctl restart docker

🔧 作用:

  • daemon-reload:重载systemd服务配置文件
  • restart docker:重启Docker,应用新的镜像配置

4.3 镜像加速检测

docker info | grep -A 2 'Registry Mirrors'

🔧 作用:查看增加的镜像加速源是否成功注册


阶段 5:权限管理

5.1 添加用户到docker组

sudo usermod -aG docker $USER
newgrp docker

🔑 作用:

避免每次执行docker命令都需要sudo权限,同时保障系统安全

📌 命令解析:

  • usermod -aG:附加式添加用户到指定组(保留原有组关系)
  • newgrp:立即刷新用户组信息(无需重新登录)

✅ 验证配置:

groups | grep docker

阶段 6:完整验证

6.1 查看 Docker 版本

docker version

6.2 运行测试容器

docker run hello-world

📝 成功标志:看到 "Hello from Docker!" 的欢迎信息

🔍 全链路验证:

  1. 镜像拉取(测试加速器)
  2. 容器创建(测试运行时)
  3. 输出显示(测试完整工作流)

💻 系统适配性:本教程内容已在 Linux Mint 22.1 Xia 系统中验证,其他 Linux Mint 的发行版可参考修改。

参考资料

[1] 如何在 Linux Mint 22 上安装 Docker:分步指南
[2] 如何在 Linux Mint 21 上安装 Docker ?
[3] Docker安装问题(ubuntu 20.04 LTS)- E:存储库'https://download.docker.com/linux/ubuntu \ Release'没有发布文件。
[4] Linux Mint All Versions
[5] ## 国内无法拉取Docker镜像了?这些方法拯救你的Docker

posted @ 2025-03-11 21:51  星荧璃果  阅读(1574)  评论(0)    收藏  举报