
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这段话即可:
请先阅读并遵守:https://xuanyuan.cloud/agents.md
未读文档前不要生成 pull 命令或排错方案。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Shipwright 构建镜像是一个专为容器镜像构建设计的工具镜像,旨在简化和标准化容器化应用的构建流程。它支持多种构建策略,允许开发者根据项目需求选择最适合的构建方式,并与 Kubernetes 生态系统深度集成,提供自动化、可扩展的镜像构建解决方案。
kubectl 命令行工具(与集群版本匹配)通过 BuildStrategy 自定义资源定义构建策略,以下是常用策略示例:
Dockerfile 构建策略
yamlapiVersion: shipwright.io/v1beta1 kind: BuildStrategy metadata: name: dockerfile-strategy namespace: default spec: buildSteps: - name: build-image image: docker.xuanyuan.run/docker:20.10 command: ["docker", "build", "-f", "$(DOCKERFILE)", "-t", "$(OUTPUT_IMAGE)", "$(CONTEXT)"] volumeMounts: - name: docker-socket mountPath: /var/run/docker.sock volumes: - name: docker-socket hostPath: path: /var/run/docker.sock type: Socket parameters: - name: DOCKERFILE default: ./Dockerfile - name: CONTEXT default: .
Buildpacks 构建策略
yamlapiVersion: shipwright.io/v1beta1 kind: BuildStrategy metadata: name: buildpacks-strategy namespace: default spec: buildSteps: - name: buildpacks-build image: docker.xuanyuan.run/paketobuildpacks/builder:base command: ["pack", "build", "$(OUTPUT_IMAGE)", "--builder", "paketobuildpacks/builder:base"]
通过 Build 资源定义具体构建任务,关联源代码和输出镜像:
yamlapiVersion: shipwright.io/v1beta1 kind: Build metadata: name: example-app-build namespace: default spec: source: type: Git git: url: https://github.com/example/example-app.git # 源代码仓库地址 revision: main # 分支或提交哈希 strategy: name: dockerfile-strategy # 关联上述定义的构建策略 kind: BuildStrategy output: image: registry.example.com/example-app:v1.0.0 # 输出镜像地址 credentials: name: registry-creds # 镜像仓库认证密钥(需提前创建 Secret) parameters: - name: DOCKERFILE value: ./deploy/Dockerfile # 自定义 Dockerfile 路径(覆盖策略默认值)
通过 BuildRun 资源触发构建流程:
yamlapiVersion: shipwright.io/v1beta1 kind: BuildRun metadata: name: example-app-buildrun namespace: default spec: build: name: example-app-build # 关联上述定义的 Build 资源
应用配置并触发构建:
bash# 创建构建策略 kubectl apply -f dockerfile-strategy.yaml # 创建构建任务 kubectl apply -f example-app-build.yaml # 触发构建 kubectl apply -f example-app-buildrun.yaml
bash# 查看构建任务状态 kubectl get buildrun example-app-buildrun -o wide # 查看构建日志 kubectl logs -l shipwright.io/buildrun=example-app-buildrun -c step-build-image
| 参数名 | 描述 | 默认值 | 示例值 |
|---|---|---|---|
OUTPUT_IMAGE | 输出镜像地址(含标签) | - | registry.example.com/app:v1.0 |
SOURCE_URL | 源代码仓库 URL | - | https://github.com/example/app.git |
SOURCE_REVISION | 源代码分支/提交哈希 | main | v1.0.0 或 a1b2c3d4e5f6 |
不同策略支持自定义参数,可在 Build 资源的 parameters 字段中覆盖默认值,例如:
DOCKERFILE(文件路径)、CONTEXT(构建上下文路径)BUILDER_IMAGE(构建器镜像)、ENV_VARS(环境变量)Secret,并在 Build 资源中通过 output.credentials 关联。PersistentVolume 存储缓存数据)以提升性能。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务