Назад к вопросам
Junior — Middle
71
Каким образом можно автоматизировать перезапуск контейнера в случае его аварийного завершения?
Компании, где спрашивали
НОРБИТ
Ответ от нейросети
sobes.tech AI
Для автоматизации перезапуска контейнера при его аварийном завершении в Docker можно использовать параметр --restart при запуске контейнера.
Основные варианты значения --restart:
no— не перезапускать контейнер (по умолчанию).on-failure— перезапускать контейнер только при ошибочном завершении (с ненулевым кодом выхода).always— всегда перезапускать контейнер, независимо от причины остановки.unless-stopped— перезапускать контейнер, кроме случаев, когда он был остановлен вручную.
Пример запуска контейнера с автоматическим перезапуском при сбое:
docker run --restart on-failure:3 my-container-image
Здесь контейнер будет перезапущен до 3 раз при аварийном завершении.
Если используется Docker Compose, можно добавить в docker-compose.yml:
restart: on-failure
Это позволит автоматически управлять жизненным циклом контейнера без дополнительного вмешательства.