在 Ubuntu 上照教程敲 apt install docker,提示找不到包;换一篇教程让装 docker.io,装完又能跑。docker.io 是 Debian 和 Ubuntu 官方仓库里 Docker 引擎的包名,不是另一款软件。

为什么叫这个名字

早年 Debian 仓库里已经有别的包占了 docker 这个名字,容器引擎打包装进仓库时只好改名,docker.io 就这么定下来了。它是发行版的打包版本,由发行版维护者负责更新和安全补丁。

和 docker-ce 的区别

docker-ce 是 Docker 官方仓库里的包名,源指向 download.docker.com。两个包装出来都是 Docker 引擎,区别在更新节奏:官方源的 docker-ce 版本新,新特性和修复先到;发行版的 docker.io 一般滞后几个小版本,胜在 apt 一条命令装好、依赖经过发行版测试。生产环境多数情况走官方源装 docker-ce,测试机图省事用 docker.io 问题不大。卡在某个新特性用不了,先看是不是版本太老,再考虑切官方源。

两条安装路径

apt install docker.io # 发行版仓库,一条命令

官方源要多两步:配 GPG 密钥、把 download.docker.com 写进 apt 源列表,再装 docker-ce。多出来的步骤换来版本一直跟官方走,compose 插件也从这条线装。装完验证用同一条命令:

docker version # 两种来源装完,验证命令一样

配套的几个常见问题

装了 docker.io 还要不要单独装 compose:新玩法是装 docker-compose-plugin 插件,命令是 docker compose 中间带空格;老的 docker-compose 独立包在部分发行版仓库里还有,看自己走的哪条路线,配套装就行。卸载也按包名来,apt remove docker.io 卸发行版的,apt remove docker-ce 加 docker-ce-cli 卸官方源的;镜像和容器数据默认在 var/lib/docker 目录下,重装前想清干净就处理这个目录。

取舍建议:本机学习、跑一两个容器,docker.io 最快;要跟新特性、用 compose v2 语法、或按官方文档对版本,走官方源装 docker-ce。