如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
amd64和arm64架构!源码托管于 https://github.com/devops-infra/docker-terragrunt%E3%80%82
Docker Hub镜像地址:https://hub.docker.com/repository/docker/devopsinfra/docker-terragrunt
GitHub Packages镜像地址:https://github.com/devops-infra/docker-terragrunt/pkgs/container/docker-terragrunt
该Docker镜像包含Terraform、OpenTofu或Terragrunt,同时集成Terragrunt、Go、Python、Make、Docker、Git及所有必要组件,可轻松管理CI/CD环境中的云基础设施,作为runner镜像使用。
内置亚马逊AWS、微软Azure、谷歌云平台(GCP) 的云服务CLI和SDK。
最适用于CI/CD自动化中的runner镜像,以及本地一致的运行环境。
请注意,这些镜像的重点是维护Terraform、OpenTofu和Terragrunt的当前版本可用性,而非CLI或其他依赖项。因此,当Terraform、OpenTofu或Terragrunt发布新版本时,镜像会同步更新。此外,镜像的版本标签包含上述软件版本以突出核心特性。
Dockerfile基于https://github.com/cytopia%E7%9A%84%E4%B8%A4%E4%B8%AA%E9%95%9C%E5%83%8F%E6%9E%84%E5%BB%BA%EF%BC%9Ahttps://github.com/cytopia/docker-terragrunt%E5%92%8Chttps://github.com/cytopia/docker-terragrunt-fmt%E3%80%82%E5%8E%9F%E5%A7%8BREADME%E6%96%87%E4%BB%B6%E5%8C%85%E5%90%AB%E5%9C%A8%E6%9C%AC%E4%BB%93%E5%BA%93%E4%B8%AD%EF%BC%9Ahttps://github.com/devops-infra/docker-terragrunt/blob/master/README.docker-terragrunt.md%E5%92%8Chttps://github.com/devops-infra/docker-terragrunt/blob/master/README.docker-terragrunt-fmt.md%E3%80%82%E6%9C%AC%E9%A1%B9%E7%9B%AE%E8%BE%83%E5%8E%9F%E5%A7%8B%E9%A1%B9%E7%9B%AE%E6%9C%89%E8%BE%83%E5%A4%A7%E6%89%A9%E5%B1%95%EF%BC%8C%E6%97%A8%E5%9C%A8%E6%88%90%E4%B8%BA%E4%BA%91%E5%9F%BA%E7%A1%80%E8%AE%BE%E6%96%BD%E5%8D%B3%E4%BB%A3%E7%A0%81%EF%BC%88IaC%EF%BC%89%E7%9A%84%E6%A1%86%E6%9E%B6%E3%80%82
镜像标签指示其包含的Terraform和Terragrunt版本,以及是否捆绑公共云提供商CLI(见下方表格)。
| 当前发布的完整标签版本 |
|---|
tf-1.13.0-ot-1.10.5-tg-0.86.2 |
| 镜像仓库 | 完整镜像名称示例 | 镜像名称 | 镜像版本 | Terraform版本 | OpenTofu版本 | Terragrunt版本 |
|---|---|---|---|---|---|---|
| https://hub.docker.com/repository/docker/devopsinfra/docker-terragrunt | devopsinfra/docker-terragrunt:tf-1.13.0-tg-0.86.2 | docker-terragrunt | tf-1.13.0-tg-0.86.2 | 1.13.0 | 不适用 | 0.86.2 |
| https://hub.docker.com/repository/docker/devopsinfra/docker-terragrunt | devopsinfra/docker-terragrunt:ot-1.10.5-tg-0.86.2 | docker-terragrunt | ot-1.10.5-tg-0.86.2 | 不适用 | 1.10.5 | 0.86.2 |
| https://github.com/devops-infra/docker-terragrunt/packages | ghcr.io/devops-infra/docker-terragrunt/docker-terragrunt:tf-1.13.0-tg-0.86.2 | docker-terragrunt | tf-1.13.0-tg-0.86.2 | 1.13.0 | 不适用 | 0.86.2 |
| https://github.com/devops-infra/docker-terragrunt/packages | ghcr.io/devops-infra/docker-terragrunt/docker-terragrunt:ot-1.10.5-tg-0.86.2 | docker-terragrunt | ot-1.10.5-tg-0.86.2 | 不适用 | 1.10.5 | 0.86.2 |
镜像标签还指示其包含的云API/SDK。
| 镜像名称 | AWS | Azure | GCP | OT | TF | 描述 |
|---|---|---|---|---|---|---|
docker-terragrunt:slim-tf-latest | ❌ | ❌ | ❌ | ❌ | ✅ | 轻量版本,包含TF、TG及基础依赖。 !Docker大小 |
docker-terragrunt:slim-ot-latest | ❌ | ❌ | ❌ | ✅ | ❌ | 轻量版本,包含OT、TG及基础依赖。 !Docker大小 |
docker-terragrunt:tf-latest | ❌ | ❌ | ❌ | ❌ | ✅ | 标准版本,包含TF,附带Go、Python、Make等工具。 !Docker大小 |
docker-terragrunt:ot-latest | ❌ | ❌ | ❌ | ✅ | ❌ | 标准版本,包含OT,附带Go、Python、Make等工具。 !Docker大小 |
docker-terragrunt:aws-tf-latest | ✅ | ❌ | ❌ | ❌ | ✅ | 标准版本,包含AWS CLI和TF。 !Docker大小 |
docker-terragrunt:aws-ot-latest | ✅ | ❌ | ❌ | ✅ | ❌ | 标准版本,包含AWS CLI和OT。 !Docker大小 |
docker-terragrunt:azure-tf-latest | ❌ | ✅ | ❌ | ❌ | ✅ | 标准版本,包含Azure CLI和TF。 !Docker大小 |
docker-terragrunt:azure-ot-latest | ❌ | ✅ | ❌ | ✅ | ❌ | 标准版本,包含Azure CLI和OT。 !Docker大小 |
docker-terragrunt:aws-azure-tf-latest | ✅ | ✅ | ❌ | ❌ | ✅ | 标准版本,包含AWS和Azure CLI及TF。 !Docker大小 |
docker-terragrunt:aws-azure-ot-latest | ✅ | ✅ | ❌ | ✅ | ❌ | 标准版本,包含AWS和Azure CLI及OT。 !Docker大小 |
docker-terragrunt:gcp-tf-latest | ❌ | ❌ | ✅ | ❌ | ✅ | 标准版本,包含GCP CLI和TF。 !Docker大小 |
docker-terragrunt:gcp-ot-latest | ❌ | ❌ | ✅ | ✅ | ❌ | 标准版本,包含GCP CLI和OT。 !Docker大小 |
docker-terragrunt:aws-gcp-tf-latest | ✅ | ❌ | ✅ | ❌ | ✅ | 标准版本,包含AWS和GCP CLI及TF。 !Docker大小 |
docker-terragrunt:aws-gcp-ot-latest | ✅ | ❌ | ✅ | ✅ | ❌ | 标准版本,包含AWS和GCP CLI及OT。 !Docker大小 |
docker-terragrunt:azure-gcp-tf-latest | ❌ | ✅ | ✅ | ❌ | ✅ | 标准版本,包含Azure和GCP CLI及TF。 !Docker大小 |
docker-terragrunt:azure-gcp-ot-latest | ❌ | ✅ | ✅ | ✅ | ❌ | 标准版本,包含Azure和GCP CLI及OT。 !Docker大小 |
docker-terragrunt:aws-azure-gcp-tf-latest | ✅ | ✅ | ✅ | ❌ | ✅ | 标准版本,包含AWS、Azure和GCP CLI及TF。 !Docker大小 |
docker-terragrunt:aws-azure-gcp-ot-latest | ✅ | ✅ | ✅ | ✅ | ❌ | 标准版本,包含AWS、Azure和GCP CLI及OT。 !Docker大小 |
/data,例如--volume $(pwd):/data。--env AWS_SESSION_TOKEN=${AWS_SESSION_TOKEN}或--volume ~/.aws/credentials:/root/.aws/credentials。--privileged --volume /var/run/docker.sock:/var/run/docker.sock。.gitconfig和/或SSH密钥(如需要),例如--volume ~/.gitconfig:/root/.gitconfig --volume ~/.ssh/id_rsa_github:/root/.ssh/id_rsa。.gitconfig示例[url "https://{GITHUB_TOKEN}@github.com/"] insteadOf = https://github.com/ [url "https://{GITHUB_TOKEN}@github.com/"] insteadOf = git+ssh://github.com/ [url "https://{GITHUB_TOKEN}@github.com/"] insteadOf = git@github.com:
[url "https://github.com/"] insteadOf = git+ssh://github.com/ [url "https://github.com/"] insteadOf = git@github.com:
[url "ssh://git@github.com/"] insteadOf = https://github.com/ [url "ssh://git@github.com/"] insteadOf = git@github.com:
bashdocker run --rm \ --user $(id -u):$(id -g) \ --volume $(pwd):/data \ devopsinfra/docker-terragrunt:latest format-hcl
bashdocker run --rm \ --tty --interactive \ --env AWS_DEFAULT_REGION=${AWS_DEFAULT_REGION} \ --env AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID} \ --env AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY} \ --env AWS_SESSION_TOKEN=${AWS_SESSION_TOKEN} \ --user $(id -u):$(id -g) \ --volume $(pwd):/data \ devopsinfra/docker-terragrunt:aws-latest terraform plan
~/.gitconfig文件连接GitHub:bashdocker run --rm \ --tty --interactive \ --user $(id -u):$(id -g) \ --volume $(pwd):/data \ --volume ~/.gitconfig:/root/.gitconfig \ devopsinfra/docker-terragrunt:aws-latest terragrunt apply --terragrunt-working-dir some/module
bashdocker run --rm \ --tty --interactive \ --user $(id -u):$(id -g) \ --volume $(pwd):/data \ devopsinfra/docker-terragrunt:aws-latest make build
| 脚本名称 | 是否在PATH中 | 用途 | 来源/文档 |
|---|---|---|---|
format-hcl | 是 | 格式化所有HCL文件(.hcl、.tf和.tfvars)为https://github.com/hashicorp/hcl%E5%BB%BA%E8%AE%AE%E7%9A%84%E6%A0%BC%E5%BC%8F%E3%80%82 | https://github.com/devops-infra/docker-terragrunt/blob/master/fmt/format-hcl |
terragrunt-fmt.sh | 否 | format-hcl的依赖脚本 | https://github.com/cytopia/docker-terragrunt-fmt/blob/master/data/terragrunt-fmt.sh |
show-versions.sh | 是 | Docker镜像的主要CMD目标,用于显示所有已安装二进制文件的版本。 | https://github.com/devops-infra/docker-terragrunt/blob/master/show-versions.sh |
部分软件因所选镜像类型而异,标记为*
| 名称 | 类型 | 描述 | 来源/文档 |
|---|---|---|---|
| awscli* | 二进制 | 通过终端与AWS交互。 | https://github.com/aws/aws-cli |
| azure-cli* | 二进制 | 通过终端与Azure交互。 | https://github.com/Azure |
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务