Есть ли способ удалить версию в Azure Container Apps?
У меня есть экземпляр приложения-контейнера Azure для тестирования целей, которые я регулярно добавляю в новые версии с помощью команды az containerapp update
в конвейере CI/CD всякий раз, когда я объединяю изменения в свою ветку master
. Поскольку все ревизии используют образ Docker с одним и тем же тегом :latest
, но не (обязательно) один и тот же код внутри контейнера Docker, я создаю новый уникальный суффикс ревизии для каждой ревизии, чтобы создать изменение области ревизии.
Я использую режим одной версии, поэтому только одна версия обслуживает 100% трафика. Поэтому всякий раз, когда я нажимаю новую версию с новым суффиксом версии, создается и активируется новая версия, а предыдущая версия деактивируется.
Используя этот подход, со временем будет создано много ревизий, и большинство из них больше не понадобятся, но все равно будут занимать место в памяти, и — поскольку имена ревизий должны быть уникальными — множество имен, которые я хотел бы использовать повторно, поэтому я хотел бы их удалить.
Однако, глядя на доступные команды в Azure CLI для ревизий, кажется, что нет способа удалить ревизию.
Поэтому возникает вопрос, если есть способ, как я могу удалить эти ревизии? В качестве альтернативы, если ревизии не могут быть удалены, есть ли другой способ, чтобы я мог заставить приложение-контейнер обновить запущенный образ докера, даже если тег образа докера не изменяется (в этом случае мне не нужно было бы (обязательно) создавать каждый раз новая ревизия)?
Я ожидал, что будет команда удаления, так как будет много приложений-контейнеров со многими версиями, которым потребуется много места для хранения (за которое, возможно, в конечном итоге придется заплатить), поскольку версия может быть активирована снова в любое время, поэтому Microsoft или Azure по крайней мере, на мой взгляд, у пользователей должно быть такое же желание удалять устаревшие / устаревшие / неиспользуемые версии.
Согласен с точкой зрения @ahmelsayed, что невозможно удалить ревизии вручную, и в конечном итоге они должны быть сокращены до самых последних 100.
Я ожидал, что будет команда удаления, так как будет много приложений-контейнеров со многими версиями, которым потребуется много места для хранения (за которое, возможно, в конечном итоге придется заплатить), поскольку версия может быть активирована снова в любое время, поэтому Microsoft или Azure по крайней мере, на мой взгляд, у пользователей должно быть такое же желание удалять устаревшие / устаревшие / неиспользуемые версии.
Как упоминалось в этом MS Doc, макс. Разрешено 100 ревизий, а более ранние удаляются, если за неактивные ревизии не взимается плата.
Вы можете деактивировать неиспользуемые или устаревшие версии с помощью портала Azure, Azure CLI, REST API или кода, такого как Java, Go и JS, а также активировать их.
Вот синтаксис деактивации Azure Container Apps Revisions с помощью Azure CLI:
az containerapp revision deactivate --revision <Your_Container_Revision_Name> --resource-group <Your_Resource-Group_Name>
Сегодня невозможно вручную удалить ревизии. В конечном итоге они должны быть сокращены до последних 100.