SuperAPI AI 工具集

testcontainers-guide-migrator

部署与运维

查看项目

更新于 10-16 05:06

技能介绍

用途:把 testcontainers.com/guides/ 下的 Testcontainers 指南迁移到 Docker docs 的 Hugo 站点。每篇指南位于 testcontainers/tc-guide-* 独立仓库,源文件为 AsciiDoc,来源仓库清单见 testcontainers-site 的 build.sh。输入包含 REPO_NAME、SLUG、LANG(go、java、dotnet、nodejs、python)、GUIDE_ID,库存共 21 篇;已迁移为 Java、Go、Python 的 getting-started。

主要能力:克隆指南仓库并直接读取本地文件(含 include::{codebase} 指令,[lines="X..Y"] 时按行截取);把 AsciiDoc 映射为 Markdown(标题、粗体、链接、代码块、NOTE/TIP 引用块),删除 :toc: 等属性与 YAML front matter;按 STYLE.md 与 COMPONENTS.md 强制风格规则改写(去 we/let's、去 hedge 词与元评述、不用 click、仅对 UI 元素加粗、去时间相对语、shell 用 console 提示);将代码升级到最新 Testcontainers API,并参考 testcontainers/claude-skills 的对应语言技能(go、node、dotnet)确认现行写法、清理方式、等待策略与反模式。

使用方式:先做预检,确认 data/tags.yaml 中有 testing-with-docker 标签,必要时向 _vale/config/vocabularies/Docker/accept.txt 添加术语;用 git clone --depth 1 https://github.com/testcontainers/{REPO_NAME}.git <tmpdir>/{REPO_NAME} 克隆。指南以 content/guides/testcontainers-{LANG}-{GUIDE_ID}/ 为独立顶级条目,_index.md 带 title、linkTitle、description、keywords、summary、toc_min、toc_max、tags: [testing-with-docker]、languages、params.time,子页仅含 title、linkTitle、description、weight,并按 create-project、write-tests、test-suites、run-tests 等章节拆分。代码验证在容器内进行:编译与测试均挂载仓库,测试还需挂载 /var/run/docker.sock,并设 DOCKER_HOST=unix:///var/run/docker.sock;macOS Docker Desktop 需 TESTCONTAINERS_HOST_OVERRIDE=host.docker.internal,Java 需 docker-java.properties 设 api.version=1.47 并挂载到 /root/.docker-java.properties,加 -Dspotless.check.skip=true,Micronaut 指南加 -Dmicronaut.test.resources.enabled=false,且不要禁用 Ryuk。测试需顺序执行,避免并发导致 Docker Desktop 的 containerd 存储损坏。最后更新 content/manuals/testcontainers.md 的 Guides 列表,不改 testcontainers-cloud/_index.md,并运行 rumdl fmt、docker buildx bake lint 与 vale 校验。

限制:资料只给出上述流程与命令,未提供该技能的收费、价格、支持平台、效果评测等信息;语言与版本要求(如 Go 1.25+、各语言镜像与依赖版本)以资料所述为准,需在使用时自行核对最新版本。