Я запускаю службу приложений Azure с использованием контейнеров Docker. Я действительно не нашел документации, при каких обстоятельствах обновляется контейнер.
Кроме того, я хотел бы использовать слоты для сервисов приложений, и я не уверен, изменится ли это что-нибудь.
Я предполагаю, что если можно контролировать обновления (особенно с заменой слотов), тег в siteconfig / linux_fx_version может быть установлен на последний. Если его невозможно контролировать (например, обновления контейнера могут происходить в случайное время), лучшим вариантом является использование явных тегов версии и их обновление при каждом развертывании.
Я не уверен, что мое предположение верно.
Уменьшенный пример моего соответствующего кода терраформирования:
resource "azurerm_app_service" "example" {
name = "example"
resource_group_name = "example"
location = ..
app_service_plan_id = "example"
app_settings = local.env_vars
site_config {
linux_fx_version = "DOCKER|someimage:latest"
}
}
resource "azurerm_app_service_slot" "staging" {
name = "staging"
location = ..
resource_group_name = "example"
app_service_plan_id = "example"
app_settings = local.env_vars
site_config {
linux_fx_version = "DOCKER|someimage:latest"
}
}