专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏

hashicorp/terraform-cloud-operator Docker 镜像 - 轩辕镜像

terraform-cloud-operator
hashicorp/terraform-cloud-operator
Kubernetes Operator允许通过Kubernetes自定义资源管理Terraform Cloud资源。
1 收藏0 次下载activehashicorp镜像
🚀专业版镜像服务,面向生产环境设计
中文简介版本下载
🚀专业版镜像服务,面向生产环境设计

Kubernetes Operator for Terraform Cloud

镜像概述和主要用途

该Kubernetes Operator是一款用于在Kubernetes环境中管理Terraform Cloud资源的工具。它通过Kubernetes自定义资源(CR)实现声明式管理,允许用户直接通过Kubernetes API定义和控制Terraform Cloud的workspaces、runs、variables等资源,实现Kubernetes与Terraform Cloud的无缝集成与统一管理。

核心功能和特性

  • 自定义资源支持:提供TerraformWorkspace、TerraformRun等自定义资源定义(CRD),支持通过Kubernetes资源声明Terraform Cloud资源状态
  • 声明式管理:采用Kubernetes声明式API范式,通过YAML配置定义资源期望状态,Operator自动协调实际状态与期望状态
  • 状态同步机制:实时监控Kubernetes自定义资源与Terraform Cloud实际资源状态,确保双向状态一致性
  • 自动化操作流:支持自动触发Terraform runs、处理plan/apply结果、管理workspace生命周期等自动化操作
  • 安全集成:通过Kubernetes Secrets管理Terraform Cloud API令牌等敏感信息,实现安全认证

使用场景和适用范围

  • Kubernetes环境中的IaC管理:适用于在Kubernetes集群内统一管理基础设施即代码(IaC)资源的DevOps团队
  • 多云资源编排:需要通过Terraform Cloud管理多云资源,同时希望利用Kubernetes控制平面进行统一编排的场景
  • GitOps工作流集成:可与GitOps工具(如ArgoCD、Flux)结合,实现Terraform Cloud资源的GitOps式管理
  • CI/CD流水线整合:在Kubernetes CI/CD流程中嵌入Terraform Cloud资源的创建与更新操作

使用方法和配置说明

前提条件
  • Kubernetes集群(v1.19+)
  • Terraform Cloud账户及API令牌(需具备workspace管理权限)
  • kubectl命令行工具(已配置集群访问权限)
部署步骤
1. 部署CRD
yaml
# terraform-operator-crd.yaml
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: terraformworkspaces.terraform-operator.example.com
spec:
  group: terraform-operator.example.com
  versions:
    - name: v1alpha1
      served: true
      storage: true
      schema:
        openAPIV3Schema:
          type: object
          properties:
            spec:
              type: object
              properties:
                name:
                  type: string
                description:
                  type: string
                terraformVersion:
                  type: string
                variables:
                  type: array
                  items:
                    type: object
                    properties:
                      key:
                        type: string
                      value:
                        type: string
                      valueFrom:
                        type: object
                        properties:
                          secretKeyRef:
                            type: object
                            properties:
                              name:
                                type: string
                              key:
                                type: string
                      category:
                        type: string
                      sensitive:
                        type: boolean
  scope: Namespaced
  names:
    plural: terraformworkspaces
    singular: terraformworkspace
    kind: TerraformWorkspace
    shortNames:
      - tfws

应用CRD:

bash
kubectl apply -f terraform-operator-crd.yaml
2. 配置认证信息

创建存储Terraform Cloud API令牌的Secret:

bash
kubectl create secret generic terraform-cloud-credentials \
  --from-literal=api-token="your-terraform-cloud-api-token"
3. 部署Operator
yaml
# terraform-operator-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: terraform-operator
  namespace: default
spec:
  replicas: 1
  selector:
    matchLabels:
      app: terraform-operator
  template:
    metadata:
      labels:
        app: terraform-operator
    spec:
      containers:
        - name: operator
          image: [operator-image]:[version]  # 替换为实际镜像名称和版本
          env:
            - name: TERRAFORM_CLOUD_API_TOKEN
              valueFrom:
                secretKeyRef:
                  name: terraform-cloud-credentials
                  key: api-token
            - name: TF_CLOUD_ORGANIZATION
              value: "your-terraform-org"  # 替换为实际Terraform组织名
            - name: LOG_LEVEL
              value: "info"
          resources:
            requests:
              cpu: 100m
              memory: 128Mi
            limits:
              cpu: 500m
              memory: 256Mi

部署Operator:

bash
kubectl apply -f terraform-operator-deployment.yaml
创建Terraform Cloud资源示例
创建Terraform Workspace
yaml
# example-workspace.yaml
apiVersion: terraform-operator.example.com/v1alpha1
kind: TerraformWorkspace
metadata:
  name: production-app
spec:
  name: "production-app"
  description: "Production environment workspace managed by Kubernetes"
  terraformVersion: "1.6.0"
  variables:
    - key: "environment"
      value: "production"
      category: "terraform"
      sensitive: false
    - key: "db_password"
      valueFrom:
        secretKeyRef:
          name: db-credentials
          key: password
      category: "env"
      sensitive: true

应用资源:

bash
kubectl apply -f example-workspace.yaml

配置参数说明

环境变量配置
环境变量名描述类型必填默认值
TERRAFORM_CLOUD_API_TOKENTerraform Cloud API访问令牌string是-
TF_CLOUD_ORGANIZATIONTerraform Cloud组织名称string是-
LOG_LEVEL日志级别(debug/info/warn/error)string否info
OPERATOR_NAMESPACE监听的命名空间(默认所有)string否""(所有)
SYNC_INTERVAL状态同步间隔(秒)int否30
自定义资源字段说明(TerraformWorkspace)
字段路径描述类型必填
spec.nameTerraform Cloud工作区名称string是
spec.description工作区描述信息string否
spec.terraformVersion指定Terraform版本string否
spec.variables工作区变量列表array否
spec.variables[].key变量键名string是
spec.variables[].value非敏感变量值string二选一
spec.variables[].valueFrom.secretKeyRef敏感变量的Secret引用object二选一
spec.variables[].category变量类别(terraform/env)string是
spec.variables[].sensitive是否为敏感变量boolean否

注意事项

  • Kubernetes集群版本需≥1.19以支持CRD子资源状态功能
  • Terraform Cloud API令牌需具备workspaces:read、workspaces:write、runs:read、runs:write权限
  • 敏感信息必须通过Kubernetes Secrets管理,禁止在CR中明文存储
  • 建议为Operator配置资源限制,避免过度占用集群资源
查看更多 terraform-cloud-operator 相关镜像 →
google/cloud-sdk logo
google/cloud-sdk
by Google
认证
谷歌云软件开发工具包(Google Cloud SDK)是集成所有必要组件与依赖项的一站式开发套件,包含gcloud、gsutil、bq等命令行工具、客户端库、API接口及认证、配置管理等关键模块,旨在帮助开发者便捷对接谷歌云平台服务,实现资源管理、应用部署、数据处理等开发操作,无需额外安装依赖即可快速上手,有效简化开发流程并提升工作效率。
451100M+ pulls
上次更新:5 天前
hashicorp/terraform logo
hashicorp/terraform
by HashiCorp, an IBM Company
认证
Terraform的自动构建。有关更多使用方法和信息,请参见README。
504100M+ pulls
上次更新:25 天前
nextcloud logo
nextcloud
by library
官方
Nextcloud手动构建Docker镜像是一款针对开源文件同步与共享平台Nextcloud的容器化部署包,支持用户通过手动配置方式构建,可灵活适配自建服务器环境,提供安全的文件存储、同步、共享及协作功能,适用于个人或企业搭建私有云存储系统,兼具部署便捷性与自定义扩展性,助力实现数据自主管理与高效协作。
44331B+ pulls
上次更新:1 天前
victoriametrics/operator logo
victoriametrics/operator
by Victoria Metrics
认证
用于在Kubernetes环境中自动化部署、管理和运维Victoria Metrics时序数据库的Operator控制器
100M+ pulls
上次更新:4 天前
owncloud logo
owncloud
by library
官方
该Docker镜像已弃用,请使用owncloud/server替代。
139350M+ pulls
上次更新:7 年前
hashicorp/hcp-terraform-operator logo
hashicorp/hcp-terraform-operator
by HashiCorp, an IBM Company
认证
Kubernetes Operator,用于通过Kubernetes自定义资源管理Terraform Cloud资源。
1100K+ pulls
上次更新:24 天前

轩辕镜像配置手册

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

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

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

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

轩辕镜像支持哪些镜像仓库?

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

流量耗尽错误提示

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

410 错误问题

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

manifest unknown 错误

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

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

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

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
hashicorp/terraform-cloud-operator
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
提交工单
免费获取在线技术支持请 提交工单,官方QQ群:13763429 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
免费获取在线技术支持请提交工单,官方QQ群: 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.
轩辕镜像 官方专业版 Logo
轩辕镜像轩辕镜像官方专业版
首页个人中心搜索镜像
交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429