【发布时间】:2019-07-06 11:41:31
【问题描述】:
我正在使用 Terraform 设置一个基础架构,我想在其中每天运行一个 Docker 容器(使用 ACI),每次都使用相同的(默认)命令。
我最初的想法是使用 Terraform 来配置一个 Container Group 资源,然后我剩下的唯一任务就是确保它每天都启动。但是,我无法弄清楚如何最简单地做到这一点。
目前,我尝试使用逻辑应用,但找不到正确的操作。理想情况下,容器组有一个可以触发它启动的 Web 挂钩,或者逻辑应用有一个可以运行 Azure CLI 命令的操作。
有什么意见吗?
provider "azure" {
}
resource "azurerm_resource_group" "test" {
name = "testResourceGroup1"
location = "North Europe"
}
data "azurerm_container_registry" "test" {
name = "..."
resource_group_name = "..."
}
resource "azurerm_container_group" "example" {
name = "example-continst"
location = "${azurerm_resource_group.test.location}"
resource_group_name = "${azurerm_resource_group.test.name}"
os_type = "Linux"
ip_address_type = "Public"
restart_policy = "Never"
image_registry_credential {
username = "${data.azurerm_container_registry.test.admin_username}"
password = "${data.azurerm_container_registry.test.admin_password}"
server = "${data.azurerm_container_registry.test.login_server}"
}
container {
name = "main"
image = "${data.azurerm_container_registry.test.login_server}/compute-instance"
cpu = "1.0"
memory = "1.0"
ports {
port = 443
protocol = "TCP"
}
}
}
resource "azurerm_logic_app_workflow" "test" {
name = "workflow1"
location = "${azurerm_resource_group.test.location}"
resource_group_name = "${azurerm_resource_group.test.name}"
}
resource "azurerm_logic_app_trigger_recurrence" "test" {
name = "run-every-day"
logic_app_id = "${azurerm_logic_app_workflow.test.id}"
frequency = "Day"
interval = 1
}
【问题讨论】:
-
我正在尝试做类似的事情。为什么在 Azure 中每天只运行一次 Docker 映像如此困难?在文档中,我不断得到淡化的解决方法。你找到解决办法了吗?
标签: azure terraform azure-container-service terraform-provider-azure azure-container-instances