轩辕镜像
轩辕镜像专业版
个人中心搜索镜像
交易
充值流量我的订单
工具
工单支持镜像收录Run 助手IP 归属地密码生成Npm 源Pip 源
帮助
常见问题我要吐槽
其他
关于我们网站地图

官方QQ群: 13763429

轩辕镜像
镜像详情
infracost/infracost-atlantis
官方博客使用教程热门镜像工单支持
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。
轩辕镜像 - 国内开发者首选的专业 Docker 镜像下载加速服务平台 - 官方QQ群:13763429 👈点击免费获得技术支持。
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

infracost-atlantis Docker 镜像下载 - 轩辕镜像

infracost-atlantis 镜像详细信息和使用指南

infracost-atlantis 镜像标签列表和版本信息

infracost-atlantis 镜像拉取命令和加速下载

infracost-atlantis 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

infracost-atlantis
infracost/infracost-atlantis

infracost-atlantis 镜像详细信息

infracost-atlantis 镜像标签列表

infracost-atlantis 镜像使用说明

infracost-atlantis 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

Infracost与Atlantis集成镜像,可自动在Atlantis输出底部添加成本估算差异评论,支持通过Docker镜像(推荐)或Infracost API两种方法集成,无需云凭证,不修改Terraform状态或云资源。
1 收藏0 次下载activeinfracost镜像
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源
中文简介版本下载
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源

infracost-atlantis 镜像详细说明

infracost-atlantis 使用指南

infracost-atlantis 配置说明

infracost-atlantis 官方文档

Infracost Atlantis 集成

本项目展示了如何将 Infracost 与 Atlantis 结合使用。它会自动在 Atlantis 输出的底部添加一条显示成本估算差异的评论。查看 此拉取请求示例,展开“显示输出”部分并向下滚动即可看到 Infracost 输出。

此集成默认使用最新版本的 Infracost,因为我们会定期添加对更多云资源的支持。如果遇到任何问题,请加入我们的 社区 Slack 频道,我们很乐意为您提供指导。

如 FAQ 中所述,不会向 Cloud Pricing API 发送任何云凭证或机密信息。Infracost 不会对您的 Terraform 状态或云资源进行任何修改。

!示例截图(宽度557,alt="示例截图")

目录

  • 使用方法
    • Docker 镜像
      • 环境变量
    • Infracost API
  • 贡献

使用方法

有两种将 Infracost 与 Atlantis 集成的方法:

  1. 使用自定义 Docker 镜像,该镜像通过 扩展 Atlantis 的 latest 镜像来添加 Infracost。这是推荐方法。

  2. 通过 curl 将 Atlantis 的 $PLANFILE 发送到 Infracost API。尽管此 API 会在处理文件后从服务器删除文件,但在将文件发送到 API 之前删除其中的机密信息是良好的安全实践。例如,AWS 提供了 一个 grep 命令 可用于此目的。

1. Docker 镜像

此方法使用 Atlantis 生成的 $PLANFILE 运行 infracost diff。以下步骤说明如何使用此方法:

  1. 此 Docker 镜像 通过添加 Infracost 来扩展 Atlantis 镜像。如果您已为 Atlantis 使用自定义 Docker 镜像,可将 此 Dockerfile 中的 RUN 命令复制到您的 Dockerfile 中。

  2. 更新 Atlantis 配置,添加 自定义命令 以使用所需环境变量(如 INFRACOST_API_KEY)运行 Infracost。下一节将描述可用的环境变量。以下示例展示了如何实现此操作,也可通过 Server Config 文件或 Server Side Repo Config 文件中的 Atlantis YAML 配置实现类似功能。

    docker run infracost/infracost-atlantis:latest server \
      --gh-user=MY_GITHUB_USERNAME \
      --gh-token=MY_GITHUB_TOKEN \
      --gh-webhook-secret=MY_GITHUB_WEBHOOK_SECRET \
      --repo-allowlist='github.com/myorg/*' \
      --repo-config-json='
        {
          "repos": [
            {
              "id": "/.*/",
              "workflow": "terraform-infracost"
            }
          ],
          "workflows": {
            "terraform-infracost": {
              "plan": {
                "steps": [
                  "init",
                  "plan",
                  {
                    "env": {
                      "name": "INFRACOST_API_KEY",
                      "value": "MY_API_KEY"
                    }
                  },
                  {
                    "env": {
                      "name": "INFRACOST_TERRAFORM_BINARY",
                      "command": "echo \"terraform${ATLANTIS_TERRAFORM_VERSION}\""
                    }
                  },
                  {
                    "run": "/home/atlantis/infracost_atlantis_diff.sh"
                  }
                ]
              }
            }
          }
        }
      '
    

    Infracost 会从 Atlantis 的 $PLANFILE(Terraform 二进制文件格式)生成 Terraform 计划 JSON。如果您希望在 Infracost 运行前执行此操作,可使用以下步骤替代上述步骤。infracost_atlantis_diff.sh 脚本会先检查 $PLANFILE.json 文件,再检查 $PLANFILE。

    - run: terraform show -no-color -json $PLANFILE > $PLANFILE.json
    - run: /home/atlantis/infracost_atlantis_diff.sh
    - run: rm -rf $PLANFILE.json
    
  3. 提交新的拉取请求以更改 Terraform 中涉及成本的内容;Atlantis 会在拉取请求上发布评论,展开“显示输出”部分,在底部即可看到 Infracost 输出。若遇到问题,可设置 atlantis_debug=true 环境变量并查看 此页面。

环境变量

本节描述必填环境变量。其他支持的环境变量详见 此页面。

Terragrunt 用户还应阅读 此页面。Terraform Cloud/Enterprise 用户还应阅读 此页面。

INFRACOST_API_KEY

必填 需获取 API 密钥,请 下载 Infracost 并运行 infracost register。

INFRACOST_TERRAFORM_BINARY

必填 用于指定当前版本的 terraform 二进制文件路径,应设置为 Atlantis 中使用的 Terraform 或 Terragrunt 二进制文件路径(Infracost 支持 Terraform v0.12 及以上版本)。如果使用 infracost/infracost-atlantis 镜像(基于 runatlantis/atlantis 镜像),可设置为:

  • Atlantis 镜像支持的 Terraform 二进制文件的绝对路径,例如 /usr/local/bin/terraform0.12.30。
  • Atlantis 存放 Terraform 二进制文件目录的相对路径,例如 <data-dir>/bin/terraform<version>。Terragrunt 用户可使用 'echo "/atlantis-data/bin/terraform${ATLANTIS_TERRAFORM_VERSION}"'。

usage_file

可选 Infracost 使用文件 的路径,用于指定基于使用量的资源的值,详见 示例文件 中的可用选项。

config_file

可选 如需按仓库设置 Terraform 版本,可在 配置文件 中定义,并将此参数设置为文件路径。在此情况下,usage_file 参数不可用,必须在配置文件中定义。

post_condition

可选 描述触发拉取请求评论条件的 JSON 字符串,可选值:

  • '{"has_diff": true}':仅当存在差异时发布评论(默认行为)。
  • '{"always": true}':始终发布评论。
  • '{"percentage_threshold": 0}':触发评论的绝对百分比阈值,例如设为 1 表示当成本估算变化超过 ±1% 时发布评论。

show_skipped

可选 显示不支持的资源(其中部分可能免费),默认值为 false。

SLACK_WEBHOOK_URL

可选 设置此参数可同时将拉取请求评论发布到 Slack Webhook,从而发送到相应的 Slack 频道。

atlantis_debug

可选 在 infracost_atlantis_diff.sh 中启用调试模式,在 Atlantis 拉取请求评论中显示运行步骤,默认值为 false。

2. Infracost API

  1. 更新 Atlantis 配置,添加 自定义命令 以运行 Infracost,如下例所示。只需将 MY_API_KEY 更新为您的 Infracost API 密钥。也可通过 Server Config 文件或 Server Side Repo Config 文件中的 Atlantis YAML 配置实现类似功能。可选步骤:在将计划 JSON 文件发送到 API 前,添加步骤移除其中的机密信息。
docker run infracost/infracost-atlantis:latest server \
  --gh-user=MY_GITHUB_USERNAME \
  --gh-token=MY_GITHUB_TOKEN \
  --gh-webhook-secret=MY_GITHUB_WEBHOOK_SECRET \
  --repo-allowlist='github.com/myorg/*' \
  --repo-config-json='
    {
      "repos": [
        {
          "id": "/.*/",
          "workflow": "terraform-infracost"
        }
      ],
      "workflows": {
        "terraform-infracost": {
          "plan": {
            "steps": [
              "init",
              "plan",
              {
                "run": "terraform show -json $PLANFILE > $PLANFILE.json"
              },
              {
                "run": "echo \"#####\" && echo && echo Infracost output:"
              },
              {
                "run": "curl -s -X POST -H \"x-api-key: MY_API_KEY\" -F \"ci-platform=atlantis\" -F \"terraform-json-file=@$PLANFILE.json\" -F \"no-color=true\" [***]"
              },
              {
                "run": "rm -rf $PLANFILE.json"
              }
            ]
          }
        }
      }
    }
  '
  1. 提交新的拉取请求以更改 Terraform 中涉及成本的内容;Atlantis 会在拉取请求上发布评论,展开“显示输出”部分,在底部即可看到 Infracost 输出。若有问题,输出中会包含错误信息。

贡献

欢迎提交拉取请求。对于重大变更,请先打开 issue 讨论您想要修改的内容。

许可证

Apache License 2.0

查看更多 infracost-atlantis 相关镜像 →

常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像免费版与专业版有分别支持哪些镜像?

免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

轩辕镜像下载加速使用手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

🔐

登录方式进行 Docker 镜像下载加速教程

通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤

🐧

Linux Docker 镜像下载加速教程

在 Linux 系统上配置轩辕镜像源,支持主流发行版

🖥️

Windows/Mac Docker 镜像下载加速教程

在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统

📦

Docker Compose 镜像下载加速教程

在 Docker Compose 中使用轩辕镜像加速,支持容器编排

📋

K8s containerd 镜像下载加速教程

在 k8s 中配置 containerd 使用轩辕镜像加速

🔧

宝塔面板 Docker 镜像下载加速教程

在宝塔面板中配置轩辕镜像加速,提升服务器管理效率

💾

群晖 NAS Docker 镜像下载加速教程

在 Synology 群晖NAS系统中配置轩辕镜像加速

🐂

飞牛fnOS Docker 镜像下载加速教程

在飞牛fnOS系统中配置轩辕镜像加速

📱

极空间 NAS Docker 镜像下载加速教程

在极空间NAS中配置轩辕镜像加速

⚡

爱快路由 ikuai Docker 镜像下载加速教程

在爱快ikuai系统中配置轩辕镜像加速

🔗

绿联 NAS Docker 镜像下载加速教程

在绿联NAS系统中配置轩辕镜像加速

🌐

威联通 NAS Docker 镜像下载加速教程

在威联通NAS系统中配置轩辕镜像加速

📦

Podman Docker 镜像下载加速教程

在 Podman 中配置轩辕镜像加速,支持多系统

📚

ghcr、Quay、nvcr、k8s、gcr 等仓库下载镜像加速教程

配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤

🚀

专属域名方式进行 Docker 镜像下载加速教程

无需登录即可使用轩辕镜像加速服务,更加便捷高效

需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429

商务:17300950906
|©2024-2025 源码跳动
商务合作电话:17300950906|Copyright © 2024-2025 杭州源码跳动科技有限公司. All rights reserved.