CentOS 6.5 內核 2.6.32 不滿足 Docker 最低要求 (3.10+),需升級內核並配置 EPEL 倉庫安裝。本文記錄完整安裝流程與避坑指南。
uname -r
# 2.6.32-431.el6.x86_64 ← 過舊,不支持 Docker
cat /etc/issue
# CentOS release 6.5 (Final)
rpm -ivh https://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
yum -y install docker-io
service docker start
chkconfig docker on
# 方案一:安裝 kernel-ml (ELRepo)
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh https://www.elrepo.org/elrepo-release-6-8.el6.elrepo.noarch.rpm
yum --enablerepo=elrepo-kernel install kernel-ml -y
# 方案二:手動編譯內核 3.10+ (不推薦生產環境)
# 修改 grub 默認啟動新內核
vim /etc/grub.conf
# default=0 (新內核通常在第一項)
reboot
uname -r
# 3.10.113-1.el6.elrepo.x86_64 ← 滿足要求
docker pull centos:latest
# 或較小的 alpine
docker pull alpine:latest
| CentOS 版本 | Docker 包名 | 內核要求 | 備註 |
|---|---|---|---|
| 6.x | docker-io | 需升級至 3.10+ | EPEL 提供,版本較舊 |
| 7.x | docker-ce | 3.10+ (原生滿足) | 官方倉庫,版本最新 |
| 8/Stream | docker-ce | 4.18+ (原生滿足) | 模塊化倉庫 |
| 問題 | 原因 | 解決 |
|---|---|---|
| docker 服務啟動失敗 | 內核版本過低 | 升級內核至 3.10+ |
| cgroups 掛載失敗 | CentOS 6 需手動掛載 | mount -t cgroup none /cgroup 加入 rc.local |
| 鏡像拉取極慢 | Docker Hub 國內訪問受限 | 配置鏡像加速器 |
| 版本過舊功能缺失 | docker-io 版本 ~1.7 | 升級 CentOS 7+ 使用 docker-ce |
vim /etc/sysconfig/docker
# 添加:
OPTIONS='--registry-mirror=https://docker.mirrors.ustc.edu.cn --selinux-enabled'
service docker restart
CentOS 6 已停止維護 (EOL 2020-11-30),強烈建議遷移至 CentOS 7/8、Rocky Linux、AlmaLinux 或 Ubuntu LTS,獲得原生 Docker 支持與安全更新。
CentOS 6.5 運行 Docker 屬權宜之計,生產環境請務必規劃系統升級遷移。