Docker-контейнер можно настроить так, чтобы он автоматически перезапускался, используя флаг --restart при создании контейнера или когда ты его запускаешь.
Docker предлагает несколько политик перезапуска для управления поведением контейнера:
no – Не перезапускать контейнер автоматически (по умолчанию)always – Перезапускать независимо от кода выхода; перезапускается даже после перезапуска daemon'аunless-stopped – Перезапускать, если только контейнер не остановлен явноon-failure – Перезапускать только если контейнер завершился с ненулевым кодом выходаИспользуй флаг --restart с командой docker run:
docker run --restart=always my-image
Для политики on-failure ты можешь дополнительно указать максимальное количество попыток:
docker run --restart=on-failure:5 my-image
Этот пример перезапускает контейнер до 5 раз, если он упадёт.
always идеально подходит для продакшен-сервисов, которые должны работать постоянноon-failure лучше для временных задач или джобов, которые могут упасть по объективным причинамunless-stopped даёт явный контроль над управлением состоянием контейнераЧтобы обновить политику перезапуска для уже запущенного контейнера, используй:
docker update --restart=always container-name
Выбирай always или unless-stopped для критических сервисов, чтобы обеспечить высокую доступность и автоматическое восстановление при неожиданных сбоях.
Политика перезагрузки no — это поведение по умолчанию для контейнеров Docker, что означает, что контейнеры не будут автоматически перезагружаться, если это не настроено явно.
Новый — ещё не проверен сообществом
Вы