温馨提示×

centos stream8能跑docker吗

小樊
33
2026-08-03 17:23:39
栏目: 智能运维

结论:可以跑,但需要注意版本和内核要求。

CentOS Stream 8 支持运行 Docker,不过由于它属于 RHEL 系,官方更推荐 Podman / Buildah,但你依然可以正常使用 Docker(社区版)。


一、CentOS Stream 8 跑 Docker 的前提条件

1️⃣ 内核要求

Docker 依赖 Linux 内核特性(cgroup、overlayfs 等):

  • CentOS Stream 8 内核版本一般 ≥ 4.18
  • 满足 Docker 要求 ✅

查看内核:

uname -r

2️⃣ 架构支持

  • ✅ x86_64
  • ✅ aarch64(部分云厂商支持)

二、推荐安装方式(Docker CE)

1️⃣ 卸载旧版本(如果有)

sudo dnf remove docker \
    docker-client \
    docker-client-latest \
    docker-common \
    docker-latest \
    docker-latest-logrotate \
    docker-logrotate \
    docker-engine

2️⃣ 安装依赖

sudo dnf install -y dnf-utils device-mapper-persistent-data lvm2

3️⃣ 添加 Docker 官方仓库

sudo dnf config-manager --add-repo \
https://download.docker.com/linux/centos/docker-ce.repo

⚠️ 注意:虽然 CentOS Stream 不完全等于 CentOS Linux,但 Docker 官方仓库兼容 RHEL 8 / Stream 8


4️⃣ 安装 Docker

sudo dnf install -y docker-ce docker-ce-cli containerd.io

如果提示依赖冲突(常见),可尝试:

sudo dnf install -y docker-ce --nobest

5️⃣ 启动 Docker

sudo systemctl enable --now docker

验证:

docker version
docker run hello-world

三、常见问题 & 注意事项

✅ 1. firewalld 与 Docker

Docker 会修改 iptables,建议:

sudo systemctl enable firewalld
sudo systemctl start firewalld

或确认规则不冲突。


✅ 2. cgroup v1 / v2(重点)

CentOS Stream 8 默认 cgroup v1,Docker 兼容性更好。

查看:

stat -fc %T /sys/fs/cgroup
  • tmpfs → cgroup v1 ✅
  • cgroup2fs → cgroup v2(Docker 20.10+ 支持,但仍有坑)

✅ 3. 官方更推荐 Podman

Red Hat 系默认推荐:

podman run hello-world

Podman 与 Docker CLI 基本兼容,但不依赖 daemon。


四、什么时候不建议用 Docker?

场景 建议
生产环境(RHEL系) Podman + systemd
Kubernetes containerd
学习 / 开发 Docker ✅

五、总结一句话

CentOS Stream 8 可以跑 Docker
✅ 安装 Docker CE 没问题
⚠️ 官方更推荐 Podman
⚠️ 注意内核、cgroup、firewalld

如果你愿意,我可以:

  • 给你 一键安装脚本
  • 对比 Docker vs Podman
  • 帮你排查 安装报错日志

0