如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
所有该镜像的标签均已终止支持(EOL),截止日期为2024年6月30日(详情参见Red Hat CentOS Linux EOL公告及https://github.com/docker-library/official-images/pull/***%EF%BC%89%EF%BC%8C%E5%B0%BD%E7%AE%A1%E6%9C%80%E5%90%8E%E4%B8%80%E6%AC%A1%E6%9C%89%E6%84%8F%E4%B9%89%E7%9A%84%E6%9B%B4%E6%96%B0%E6%98%AF%E5%9C%A82020%E5%B9%B411%E6%9C%8816%E6%97%A5%EF%BC%8C%E8%BF%9C%E6%97%A9%E4%BA%8EEOL%E6%97%A5%E6%9C%9F%EF%BC%88%E5%8F%82%E8%A7%81https://github.com/docker-library/official-images/pull/9102%EF%BC%9B%E5%8F%A6%E8%A7%81CentOS%E5%AE%98%E6%96%B9EOL%E8%AF%B4%E6%98%8E%E5%92%8Chttps://github.com/docker-library/docs/pull/2205%EF%BC%89%E3%80%82%E8%AF%B7%E7%9B%B8%E5%BA%94%E8%B0%83%E6%95%B4%E6%82%A8%E7%9A%84%E4%BD%BF%E7%94%A8%E6%96%B9%E5%BC%8F%E3%80%82
维护者:
https://github.com/CentOS/sig-cloud-instance-images
获取帮助:
Docker社区Slack、Server Fault、Unix & Linux或Stack Overflow
Dockerfile链接无支持标签
问题提交地址:
https://bugs.centos.org%E6%88%96https://github.com/CentOS/sig-cloud-instance-images/issues
支持的架构:(https://github.com/docker-library/official-images#architectures-other-than-amd64%EF%BC%89
无支持架构
已发布镜像制品详情:
https://github.com/docker-library/repo-info/blob/master/repos/centos%EF%BC%88https://github.com/docker-library/repo-info/commits/master/repos/centos%EF%BC%89
(镜像元数据、传输大小等)
镜像更新:
https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Fcentos
https://github.com/docker-library/official-images/blob/master/library/centos%EF%BC%88https://github.com/docker-library/official-images/commits/master/library/centos%EF%BC%89
本描述的来源:
https://github.com/docker-library/docs/tree/master/centos%EF%BC%88https://github.com/docker-library/docs/commits/master/centos%EF%BC%89
CentOS Linux是一个社区支持的发行版,源自Red Hat为Red Hat Enterprise Linux (RHEL)公开提供的源代码。因此,CentOS Linux旨在与RHEL功能兼容。CentOS项目主要修改软件包以移除上游供应商的品牌和图标。CentOS Linux免费且可自由再分发。每个CentOS Linux版本的维护周期长达10年(通过安全更新——Red Hat提供的源代码支持周期随时间有所变化)。新的CentOS Linux版本大约每2年发布一次,每个版本会定期更新(约每6个月)以支持更新的硬件。这提供了一个安全、低维护、可靠、可预测且可重现的Linux环境。
wiki.centos.org
!https://raw.githubusercontent.com/docker-library/docs/c4df0024e2cad985326dc38f6b6ce39abeab59c5/centos/logo.png
centos:latest标签始终是当前可用的最新版本。
CentOS项目为所有活跃版本提供定期更新的镜像。这些镜像将每月更新或在需要紧急修复时更新。这些滚动更新仅使用主版本号标签。例如:
consoledocker pull centos:6 docker pull centos:7
此外,还提供与安装介质对应的次要版本标签镜像。这些镜像不会接收更新,因为它们旨在匹配安装ISO内容。如果选择使用这些镜像,强烈建议在Dockerfile中包含RUN yum -y update && yum clean all,或通过其他方式解决潜在的安全问题。要使用这些镜像,请指定次要版本标签:
例如:
consoledocker pull centos:5.11 docker pull centos:6.6
最新的Docker版本支持overlayfs后端,从Docker 1.13起,大多数支持该后端的发行版默认启用它。在CentOS 6和7上,该后端要求安装并启用yum-plugin-ovl;虽然最近的centos镜像中默认已安装,但如果更新/etc/yum.conf文件,请确保保留plugins=1选项;否则,可能会遇到与rpmdb校验和失败相关的错误——详情参见https://github.com/docker/docker/issues/***%E3%80%82
默认情况下,CentOS容器使用yum的nodocs选项构建,这有助于减小镜像大小。如果安装软件包后发现文件缺失,请注释掉/etc/yum.conf中的tsflags=nodocs行并重新安装软件包。
centos:7和centos:latest基础容器中现已包含systemd,但默认未激活。要使用systemd,需要包含类似于以下示例Dockerfile的内容:
dockerfileFROM centos:7 ENV container docker RUN (cd /lib/systemd/system/sysinit.target.wants/; for i in *; do [ $i == \ systemd-tmpfiles-setup.service ] || rm -f $i; done); \ rm -f /lib/systemd/system/multi-user.target.wants/*;\ rm -f /etc/systemd/system/*.wants/*;\ rm -f /lib/systemd/system/local-fs.target.wants/*; \ rm -f /lib/systemd/system/sockets.target.wants/*udev*; \ rm -f /lib/systemd/system/sockets.target.wants/*initctl*; \ rm -f /lib/systemd/system/basic.target.wants/*;\ rm -f /lib/systemd/system/anaconda.target.wants/*; VOLUME [ "/sys/fs/cgroup" ] CMD ["/usr/sbin/init"]
此Dockerfile删除了许多可能导致问题的单元文件。构建基础镜像:
console$ docker build --rm -t local/c7-systemd .
要使用上面创建的启用systemd的基础容器,创建如下Dockerfile:
dockerfileFROM local/c7-systemd RUN yum -y install httpd; yum clean all; systemctl enable httpd.service EXPOSE 80 CMD ["/usr/sbin/init"]
构建应用镜像:
console$ docker build --rm -t local/c7-systemd-httpd .
要运行带有systemd的容器,需要从主机挂载cgroups卷:
console$ docker run -ti -v /sys/fs/cgroup:/sys/fs/cgroup:ro -p 80:80 local/c7-systemd-httpd
此容器在有限的上下文中运行systemd,并挂载了cgroups文件系统。有报告称,如果使用Ubuntu主机,除了cgroups挂载外,还需要添加-v /tmp/$(mktemp -d):/run。
CentOS 6的二进制文件和/或库构建时期望通过vsyscall映射访问某些系统调用。一些Linux发行版选择完全禁用vsyscall(仅选择更安全的vdso映射),导致段错误。
如果运行docker run --rm -it centos:centos6.7 bash立即以状态码139退出,请检查系统是否已禁用vsyscall:
console$ cat /proc/self/maps | egrep 'vdso|vsyscall' 7fffccfcc000-7fffccfce000 r-xp 00000000 00:00 0 [vdso] $
对比
console$ cat /proc/self/maps | egrep 'vdso|vsyscall' 7fffe03fe000-7fffe0400000 r-xp 00000000 00:00 0 [vdso] ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
如果看不到vsyscall映射,且需要运行CentOS 6容器,请尝试在引导加载程序的内核选项中添加vsyscall=emulated
进一步阅读:lwn.net
查看此镜像中包含的软件的许可证信息。
与所有Docker镜像一样,这些镜像可能还包含其他软件,这些软件可能采用其他许可证(例如基础发行版中的Bash等,以及主要软件的任何直接或间接依赖项)。
一些能够自动检测到的其他许可证信息可能位于https://github.com/docker-library/repo-info/tree/master/repos/centos%E4%B8%AD%E3%80%82
对于任何预构建镜像的使用,镜像用户有责任确保对该镜像的任何使用都符合其中包含的所有软件的相关许可证。
以下是 ppc64le/centos 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


来自真实用户的反馈,见证轩辕镜像的优质服务