
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本镜像为 Calico 项目中使用 Go 语言开发的组件提供专用构建环境,旨在标准化构建流程,确保开发、测试及 CI/CD 环境的一致性。通过预配置 Go 编译工具链、依赖管理工具及 Calico 项目特定构建依赖,简化项目编译、打包及测试过程。
go mod、go get 等工具,支持 Go 模块依赖解析与缓存。make、git、curl 等)及依赖库。GOOS、GOARCH),实现跨平台编译。为开发者提供一致的本地构建环境,避免因系统差异导致的“在我机器上能运行”问题。
集成到 Jenkins、GitHub Actions 等 CI/CD 平台,作为自动化构建步骤的执行环境,确保流水线稳定性。
通过配置 GOOS 和 GOARCH 环境变量,支持为不同操作系统(如 Linux、Windows)和架构(如 amd64、arm64)编译 Calico 组件。
在隔离环境中执行单元测试、集成测试,确保测试结果不受宿主环境干扰。
从源码仓库构建或通过容器 registry 拉取(需确认实际 registry 地址,以下为示例):
bashdocker pull calico/go-build:latest
4.2.1 本地项目构建
挂载本地 Calico Go 项目目录至容器,执行构建命令:
bash# 假设项目位于本地 ./calico-project 目录 docker run --rm -v $(pwd)/calico-project:/go/src/github.com/projectcalico/calico \ -w /go/src/github.com/projectcalico/calico \ calico/go-build:latest \ make build # 替换为实际构建命令(如 go build -o calico-bin ./cmd/...)
--rm:构建完成后自动删除容器。-v:挂载本地项目目录到容器内的 Go 工作区(默认 GOPATH=/go)。-w:设置容器工作目录为项目路径。4.2.2 跨平台编译
通过环境变量指定目标平台,例如编译 Linux arm64 架构二进制:
bashdocker run --rm -v $(pwd)/calico-project:/go/src/github.com/projectcalico/calico \ -w /go/src/github.com/projectcalico/calico \ -e GOOS=linux -e GOARCH=arm64 \ calico/go-build:latest \ go build -o calico-bin-linux-arm64 ./cmd/...
| 环境变量 | 说明 | 默认值 |
|---|---|---|
GOPATH | Go 工作区路径 | /go |
GOOS | 目标操作系统(如 linux) | 容器宿主 OS |
GOARCH | 目标架构(如 amd64) | 容器宿主架构 |
GO111MODULE | 是否启用 Go 模块 | on |
GOCACHE | Go 编译缓存目录 | /go/cache |
创建 docker-compose.yml 简化本地构建流程:
yamlversion: '3' services: calico-build: image: calico/go-build:latest volumes: - ./calico-project:/go/src/github.com/projectcalico/calico # 挂载项目目录 - go-cache:/go/cache # 持久化 Go 编译缓存,加速重复构建 working_dir: /go/src/github.com/projectcalico/calico environment: - GOOS=linux - GOARCH=amd64 - GO111MODULE=on command: make build # 默认执行的构建命令 volumes: go-cache: # 缓存卷,避免重复下载依赖和编译
启动构建:
bashdocker-compose run calico-build
将构建逻辑写入脚本(如 build.sh),挂载并执行:
bash# 本地创建 build.sh,内容示例: #!/bin/bash go mod download go test ./... go build -o calico-bin ./cmd/... # 赋予执行权限 chmod +x build.sh # 容器内执行自定义脚本 docker run --rm -v $(pwd):/workspace -w /workspace calico/go-build:latest ./build.sh
calico/go-build:v1.20)而非 latest,确保构建环境一致性。-u $(id -u):$(id -g) 指定用户 ID。go mod tidy 或删除缓存卷(如 go-cache)强制更新依赖。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。



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