
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
!GitHub Repo Size !GitHub Code Size in Bytes !GitHub Last Commit !GitHub Commit Activity
dfimage是一个从Docker镜像***生成Dockerfile的工具。它通过分析Docker存储的镜像层元数据,重建(近似)用于生成该镜像的Dockerfile指令,类似于docker history命令但更完整。灵感来源于https://github.com/CenturyLinkLabs/dockerfile-from-image%E5%92%8Chttps://hub.docker.com/r/chenzj/dfimage/%E9%A1%B9%E7%9B%AE%E3%80%82
docker images可见的镜像)docker run命令执行FROM指令docker run和Docker socket访问)docker pull获取)/var/run/docker.sock)以允许访问Docker APIbashdocker run -v /var/run/docker.sock:/var/run/docker.sock dfimage <镜像名:标签>
<镜像名:标签>:必需,指定目标镜像的名称和标签(如ruby:latest),支持完整镜像名或简写形式-v /var/run/docker.sock:/var/run/docker.sock:必需,挂载Docker socket以访问Docker API拉取目标镜像(如官方ruby镜像):
bashdocker pull ruby:latest # 输出示例: # latest: Pulling from library/ruby # ... # Status: Downloaded newer image for ruby:latest
拉取dfimage镜像:
bashdocker pull ghcr.io/laniksj/dfimage # 输出示例: # Using default tag: latest # latest: Pulling from dfimage # ... # Status: Downloaded newer image for ghcr.io/laniksj/dfimage:latest
创建便捷别名(可选,简化后续命令):
bashalias dfimage="docker run -v /var/run/docker.sock:/var/run/docker.sock --rm ghcr.io/laniksj/dfimage"
生成Dockerfile:
bashdfimage ruby:latest # 输出示例(生成的Dockerfile内容): # FROM buildpack-deps:latest # RUN useradd -g users user # RUN apt-get update && apt-get install -y bison procps # RUN apt-get update && apt-get install -y ruby # ADD dir:03090a5fdc5feb8b4f1d6a69214c37b5f6d653f5185cddb6bf7fd71e6ded561c in /usr/src/ruby # WORKDIR /usr/src/ruby # RUN chown -R user:users . # USER user # RUN autoconf && ./configure --disable-install-doc # RUN make -j"$(nproc)" # RUN make check # USER root # RUN apt-get purge -y ruby # RUN make install # RUN echo 'gem: --no-rdoc --no-ri' >> /.gemrc # RUN gem install bundler # ONBUILD ADD . /usr/src/app # ONBUILD WORKDIR /usr/src/app # ONBUILD RUN [ ! -e Gemfile ] || bundle install --system
将别名添加到shell配置文件(如~/.bashrc或~/.zshrc):
bashecho 'alias dfimage="docker run -v /var/run/docker.sock:/var/run/docker.sock --rm ghcr.io/laniksj/dfimage"' >> ~/.bashrc source ~/.bashrc
Docker镜像由一系列层组成,每层对应Dockerfile中的一条指令。dfimage通过以下步骤重建Dockerfile:
RUN、USER、WORKDIR等)FROM指令的基础镜像通过docker inspect <层ID>可查看层对应的指令,例如:
bashdocker inspect 011aa33ba92b # 输出片段: # { # ... # "ContainerConfig": { # "Cmd": [ # "/bin/sh", # "-c", # "#(nop) ONBUILD RUN [ ! -e Gemfile ] || bundle install --system" # ], # ... # } # }
FROM指令,可能导致基础镜像之后的层指令未被完全还原dockerfileADD dir:03090a5fdc5feb8b4f1d6a69214c37b5f6d653f5185cddb6bf7fd71e6ded561c in /usr/src/ruby
docker pull获取远程镜像可通过以下命令从容器中提取文件(非dfimage核心功能,为附加实用技巧):
bashdocker run --rm --entrypoint cat <镜像名> /path/to/file > 本地文件名
![MIT License]([***]
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务