
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/git-init 是 Tekton Pipeline 项目的官方组件镜像,包含 git-init 工具。该工具专为在 Tekton Task 中执行 Git 相关操作设计,主要用于从 Git 仓库获取源代码,是 Tekton CI/CD 流程中实现"源代码获取"步骤的关键组件。
user.name、user.email、http.proxy 等)在 Tekton Task 中,通过 step 引用该镜像,配置 Git 操作参数。以下是典型的 Task 定义示例:
yamlapiVersion: tekton.dev/v1beta1 kind: Task metadata: name: git-clone-example spec: params: - name: repo-url type: string description: Git 仓库 URL(如 https://github.com/example/repo.git 或 git@github.com:example/repo.git) - name: branch type: string description: 分支或标签名 default: main workspaces: - name: source description: 用于存放克隆代码的工作空间 steps: - name: git-clone image: gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/git-init workingDir: $(workspaces.source.path) args: - "-url=$(params.repo-url)" - "-revision=$(params.branch)" - "-path=." # 克隆到当前工作目录(即工作空间路径)
git-init 工具通过命令行参数接收配置,常用参数如下:
| 参数名 | 描述 | 示例值 |
|---|---|---|
-url | 必选,Git 仓库 URL(HTTPS 或 SSH 格式) | https://github.com/tektoncd/pipeline.git |
-revision | 可选,分支名、标签名或提交哈希(默认:仓库默认分支) | main、v0.45.0、a1b2c3d4 |
-path | 可选,克隆目标路径(相对于当前工作目录,默认:.) | src |
-depth | 可选,浅克隆深度(仅拉取最近 N 次提交,减少数据传输) | 1 |
-sslVerify | 可选,是否验证 SSL 证书(true/false,默认:true) | false |
-submodules | 可选,是否拉取子模块(true/false,默认:false) | true |
-gitConfig | 可选,自定义 Git 配置(格式:key=value,可多次指定) | user.name=tekton-ci,user.email=ci@tekton.dev |
git-init 支持多种 Git 认证方式,需通过 Kubernetes Secret 挂载或环境变量注入凭证:
1. SSH 认证
id_rsa)存储在 Kubernetes Secret 中~/.ssh 目录(通常路径为 /root/.ssh)示例 Secret 定义:
yamlapiVersion: v1 kind: Secret metadata: name: git-ssh-cred type: Opaque data: id_rsa: <base64-encoded-ssh-private-key> # 私钥内容经 base64 编码 known_hosts: <base64-encoded-known-hosts> # 可选,预配置 known_hosts 避免主机验证提示
Task 中挂载配置:
yamlworkspaces: - name: ssh-creds mountPath: /root/.ssh readOnly: true
2. HTTPS 认证(用户名密码/OAuth 令牌)
GIT_USERNAME 和 GIT_PASSWORD 注入凭证(适用于 HTTPS 仓库)GIT_PASSWORD,GIT_USERNAME 可设为任意非空值(如 git)示例 Task 步骤环境变量配置:
yamlsteps: - name: git-clone image: gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/git-init env: - name: GIT_USERNAME valueFrom: secretKeyRef: name: git-https-cred key: username - name: GIT_PASSWORD valueFrom: secretKeyRef: name: git-https-cred key: password args: ["-url=https://github.com/private-repo.git", "-revision=main"]
除认证相关变量外,git-init 还支持以下环境变量控制行为:
| 环境变量名 | 描述 | 默认值 |
|---|---|---|
GIT_SSL_NO_VERIFY | 禁用 SSL 证书验证(等价于 -sslVerify=false) | false |
HOME | 指定用户主目录(影响 SSH 配置文件路径,如 .ssh 目录位置) | /root |
GIT_TERMINAL_PROMPT | 禁用 Git 终端交互提示(避免因凭证缺失导致任务阻塞) | 0 |
docker run 命令独立运行-depth 参数启用浅克隆以提升性能sslVerify=false 或挂载 CA 证书至容器的信任根目录(如 /etc/ssl/certs)您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务