结论:可以跑,但需要注意版本和内核要求。
CentOS Stream 8 支持运行 Docker,不过由于它属于 RHEL 系,官方更推荐 Podman / Buildah,但你依然可以正常使用 Docker(社区版)。
Docker 依赖 Linux 内核特性(cgroup、overlayfs 等):
查看内核:
uname -r
sudo dnf remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
sudo dnf install -y dnf-utils device-mapper-persistent-data lvm2
sudo dnf config-manager --add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
⚠️ 注意:虽然 CentOS Stream 不完全等于 CentOS Linux,但 Docker 官方仓库兼容 RHEL 8 / Stream 8
sudo dnf install -y docker-ce docker-ce-cli containerd.io
如果提示依赖冲突(常见),可尝试:
sudo dnf install -y docker-ce --nobest
sudo systemctl enable --now docker
验证:
docker version
docker run hello-world
Docker 会修改 iptables,建议:
sudo systemctl enable firewalld
sudo systemctl start firewalld
或确认规则不冲突。
CentOS Stream 8 默认 cgroup v1,Docker 兼容性更好。
查看:
stat -fc %T /sys/fs/cgroup
tmpfs → cgroup v1 ✅cgroup2fs → cgroup v2(Docker 20.10+ 支持,但仍有坑)Red Hat 系默认推荐:
podman run hello-world
Podman 与 Docker CLI 基本兼容,但不依赖 daemon。
| 场景 | 建议 |
|---|---|
| 生产环境(RHEL系) | Podman + systemd |
| Kubernetes | containerd |
| 学习 / 开发 | Docker ✅ |
✅ CentOS Stream 8 可以跑 Docker
✅ 安装 Docker CE 没问题
⚠️ 官方更推荐 Podman
⚠️ 注意内核、cgroup、firewalld
如果你愿意,我可以: