
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
This project is both an image and a proof-of-concept to build extremely minimal
Docker images, but on top of the whole Debian catalog! Building uses https://github.com/intoli/exodus
to create self-contained ***aries with their entire library dependencies and
Docker https://docs.docker.com/develop/develop-images/multistage-build/ builds to squash away the original Debian context and
installation. This results in images that contain the bare minimal to run the
***ary at hand. For example, packaging the jq ***ary takes 3.18MB instead of
80.3MB (on top of Debian Jessie) or 5.32MB (on top of Alpine, but this isn't a
fair comparison).
The steps to create such minimal images are as follows:
efrecon/exodus, this image is based on the latest https://hub.docker.com/_/python/
image, itself based on top of Debian https://hub.docker.com/_/debian/.apt-get update and apt-get install calls.exodus to relocate the ***aries to temporary tarballs.HOME directory
for the root user or similar.HOME directory directly into / (this is
safe, the image will not contain anything else).The following exemplifies these steps on https://stedolan.github.io/jq/.
DockerfileFROM efrecon/exodus # Install whatever needed from debian RUN apt-get update && \ apt-get install -y jq # Relocate the necessary binaries, and only those RUN exodus --tarball jq --output /tmp/jq.tgz && \ tar --strip 1 -C /root -zxvf /tmp/jq.tgz # Restart from an empty image FROM scratch # Copy back the binaries, and maybe any configuration data or similar from the # previous stage. COPY --from=0 /root / # You now have a minimal image! ENTRYPOINT ["/bin/jq"]
Build this image using a command similar to:
Shelldocker build -t efrecon/jq .
On my system, the resulting image is 3.18MB, nothing more, nothing less...
Debian
By comparison, a similar image based on the following Dockerfile is 80.3MB.
DockerfileFROM debian:jessie-slim RUN apt-get update && \ apt-get install -y jq && \ rm -rf /var/lib/apt/lists/* ENTRYPOINT ["jq"]
Alpine
Building on top of Alpine with the following Dockerfile leads to a 5.32MB image
instead. However, Alpine is built on top of the https://www.musl-libc.org/ library and has a
smaller set of software packages available. https://github.com/intoli/exodus uses https://www.musl-libc.org/ to properly
relocate the ***aries, but these will still depend of libc.
DockerfileFROM alpine RUN apk --no-cache add jq ENTRYPOINT ["jq"]
Nothing would be possible without https://github.com/intoli/exodus and its ability to relocate ***aries and their library dependencies.
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务