如果 Cloud Assembly 用户需要设计并运行 Terraform 集成但 Internet 连接已断开,则可以按照以下示例设置其运行时环境。
注: 要获取映像创建的源,设置过程涉及短暂连接到 Internet。如果无法建立临时连接,可能需要在断开连接的站点之外执行这些步骤。
此过程假设您具有自己的 Docker 注册表,无需 Internet 连接即可访问其存储库。
构建包括 Terraform 提供程序插件二进制文件的自定义容器映像。
以下 Dockerfile 显示了使用 Terraform GCP 提供程序创建自定义映像的示例。
防火墙设置或代理设置可能会导致映像构建失败。可能需要允许访问 releases.hashicorp.com 以下载 Terraform 提供程序插件二进制文件。但是,可以选择使用专用注册表提供插件二进制文件。
在断开连接的站点上,构建、标记自定义容器映像并将自定义容器映像推送到您自己的 Docker 存储库。
创建或编辑 Terraform 版本,以使其包含本地服务器上托管的 Terraform CLI 二进制文件的 URL。
如果本地 Web 或 FTP 服务器需要登录身份验证,请选择基本身份验证,然后输入可以访问服务器的用户名和密码凭据。
要更改身份验证类型,您必须在 Cloud Assembly 中具有云管理员角色。
运行时准备就绪后,可以将 Terraform 配置文件添加到 git,为其设计云模板并进行部署。
部署时,在 Cloud Assembly 中打开部署。在“历史记录”选项卡下,查找 Terraform 事件,然后单击右侧的显示日志。本地 Terraform 提供程序正常运行时,日志中会显示以下消息。
要获得更可靠的日志,可以手动编辑云模板代码以添加 TF_LOG: DEBUG,如以下示例所示。
要构建您自己的基础映像,请改用以下 Dockerfile。