在 Azure 中部署容器实例
使用 Azure上的Terraform 来部署 IronSecureDoc Docker 容器,并通过公共 IP 地址和 FQDN 使其可用。
先决条件
第 1 步:克隆 GitHub 仓库模板
我们已为您准备好 GitHub 仓库模板,您可以克隆并立即开始使用 这里:
https://github.com/iron-software/IronSecureDoc-Terraform/
步骤 2:修改所有资源名称
修改 variables.tf
中的所有资源名称
resource_group_name
:资源组名称。resource_group_location
:资源组的位置。您可以从 REGIONS.md 中找到区域,使用第二列填写此变量。container_group_name
: 容器组的名称。container_name
:容器的名称。image_tag
:要部署的图像的标签,可以是latest
或任何数字。- 其他变量无需更改。
创建包含所有敏感数据的 secret.tfvars
并填写以下变量
Azure 容器注册中心
在 dns_name_label = var.dns_name_label
后添加下面的 main.tf
:
image_registry_credential {
server = var.registry_server
username = var.registry_username
password = var.registry_password
}
添加variables.tf
:
variable "registry_server" {
type = string
sensitive = false
description = "The server for the container registry. Required if the image is stored in a private registry."
}
variable "registry_username" {
type = string
sensitive = true
description = "Username for the container registry. Required if the image is stored in a private registry."
}
variable "registry_password" {
type = string
sensitive = true
description = "Password for the container registry. Required if the image is stored in a private registry."
default = "latest"
}
添加 "secret.tfvars":
registry_server = "<registry-name>.azurecr.io"
registry_username = "YOUR-REGISTRY-USERNAME"
registry_password = "YOUR-REGISTRY-PASSWORD"
license_key = "YOUR-LICENSE-KEY"
Docker Hub
secret.tfvars
添加:
license_key = "YOUR-LICENSE-KEY"
第 3 步:初始化 Terraform
运行 terraform init 初始化 Terraform 部署。该命令会下载管理 Azure 资源所需的 Azure 提供程序。
terraform init -upgrade
第 4 步:创建 Terraform 执行计划
运行 地形改造计划 来创建执行计划。
terraform plan -var-file="secret.tfvars" -out main.tfplan
第 5 步:应用 Terraform 执行计划
运行 申请地形改造 将执行计划应用于云基础设施。
terraform apply main.tfplan
第 6 步:验证结果
1.应用执行计划时,Terraform 会输出公共 IP 地址。要再次显示 IP 地址,请运行 terraform output。
terraform output -raw container_ipv4_address
或显示 FQDN。
terraform output -raw container_fqdn
- 使用 Postman 或 curl 进行验证。结果应返回
pong
。
curl http://<container_ipv4_address>:8080/v1/document-services/ping
或使用 FQDN
curl http://<container_fqdn>:8080/v1/document-services/ping
第 7 步:销毁资源
- 创建销毁资源的执行计划
terraform plan -destroy -var-files="secret.tfvars" -out main.tfplan
- 执行销毁计划
terraform apply main.tfplan