
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
tardigrade-ci是一个基于Docker的测试框架,打包了Plus3IT用于开发和维护各类项目的工具和命令快捷方式的make目标。它集成了丰富的开发辅助功能,如代码格式化、语法检查(lint)、验证、文档生成等,支持多种文件类型和编程语言,旨在简化项目开发和维护流程,提升开发效率与代码质量。
适用于需要自动化代码质量控制、标准化开发流程的各类项目,尤其适合使用Terraform、CloudFormation、Python、Shell脚本等技术栈的基础设施即代码(IaC)项目和应用开发项目。可帮助团队减少手动操作,确保代码格式一致性,提前发现语法错误和潜在问题。
无论采用何种使用方式,均需一个基础Makefile。以下是示例Makefile内容:
bashSHELL := /bin/bash include $(shell test -f .tardigrade-ci || curl -sSL -o .tardigrade-ci "https://raw.githubusercontent.com/plus3it/tardigrade-ci/master/bootstrap/Makefile.bootstrap"; echo .tardigrade-ci)
需先完成前提条件中的Makefile设置。注意:目标项目必须作为绑定挂载(bindmount)添加到Docker工作目录(WORKDIR)。
拉取镜像:
bashIMAGE="plus3it/tardigrade-ci:latest" docker pull "$IMAGE"
运行容器(以获取帮助为例):
bashdocker run --rm -ti -v "$PWD/:/workdir/" -w /workdir "$IMAGE" help
通过make调用目标,推荐结合基于plus3it/tardigrade-ci的Dockerfile使用make docker/run目标,此时系统仅需安装make和docker。
步骤
创建项目Dockerfile(指定所需版本):
bashFROM plus3it/tardigrade-ci:0.8.0
完成前提条件中的Makefile设置。
更新.gitignore文件:
bash# tardigrade-ci .tardigrade-ci tardigrade-ci/
运行目标:
bashmake docker/run target=<TARGET>
其中<TARGET>为具体操作目标(如terraform/lint、python/format)。
扩展使用:可在本地Makefile中直接引用tardigrade-ci的变量和目标,例如安装GitHub发布的二进制文件:
bash## Install gomplate gomplate/% GOMPLATE_VERSION ?= latest gomplate/install: @ $(MAKE) install/gh-release/$(@D) FILENAME="$(BIN_DIR)/$(@D)" OWNER=hairyhenderson REPO=$(@D) VERSION=$(GOMPLATE_VERSION) QUERY='.name | endswith("$(OS)-$(ARCH)")'
使用Makefile方式需系统安装以下软件及版本:
make v4.2+jq v1.5+git v2.20+bash v4+sed v4+awk v4+grep v3+xargs v4.7+curl v7+部分目标依赖额外包(可预安装或避免调用相关目标):zip、nodejs。
bootstrap Makefile通过include指令获取并处理核心逻辑,支持两种操作模式:
自动将tardigrade-ci仓库克隆到项目子目录(如/{project}/tardigrade-ci/),由bootstrap管理更新。通过环境变量TARDIGRADE_CI_BRANCH指定分支/标签,默认解析为Dockerfile版本(若存在)或master分支。
用户需手动将tardigrade-ci仓库克隆到项目同级目录(如/{project}/和/tardigrade-ci/),适合本地开发调试tardigrade-ci本身。
make init:强制启用用户模式,克隆仓库到项目子目录make clean:删除克隆目录和bootstrap文件,下次运行时重新初始化通过make help查看所有目标,核心目标如下:
bashAvailable targets: bumpversion/major 使用'bumpversion'更新主版本 bumpversion/minor 使用'bumpversion'更新次版本 bumpversion/patch 使用'bumpversion'更新补丁版本 cfn/lint Lint CloudFormation文件 clean 清理build-harness docker/build 构建tardigrade-ci Docker镜像 docker/clean 清理本地Docker环境 docker/run 运行tardigrade-ci Docker镜像 docs/generate 生成Terraform文档 docs/lint Lint Terraform文档 ec/lint 运行editorconfig-checker检查项目 hcl/format 格式化hcl文件 hcl/lint Lint hcl文件 hcl/validate 验证hcl文件 help 显示帮助信息 init 初始化build-harness json/format 格式化json文件 json/lint Lint json文件 python/format 格式化Python文件 python/lint 检查Python文件格式并Lint sh/lint Lint bash脚本文件 terraform/format 格式化terraform文件 terraform/lint Lint terraform文件 test 运行tests目录中的Terraform测试 yaml/lint Lint YAML文件
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务