2016-07-05 2 views
1

Что такое легкий свет, чтобы перезапустить несостоявшийся контейнер докеров автоматически, то есть без необходимости устанавливать и настраивать инструменты, такие как Swarm или Kubernetes?DevOps: автоматический перезапуск отказавшего контейнера

Я спрашиваю, потому что мне нужно иметь некоторую устойчивость к работающему контейнеру в случае, если контейнер «остановится» в результате сбоя процесса, в котором он запущен.

+1

На какой платформе вы используете для развертывания экземпляров? У AWS есть несколько услуг, которые могут помочь вам в этом (ECS, beanstalk) и довольно быстро настроить. Облако Google имеет похожие службы, с которыми я не знаком. Docker также опубликовал сервисную функцию в своем последнем выпуске, который может удовлетворить ваши потребности - https://blog.docker.com/2016/06/docker-1-12-built-in-orchestration/ –

+0

Хмм. Простой ... устойчивый ... Спасибо за ссылку – nikk

ответ

4

Сначала проверьте, можно добавить restart policies to your docker run command.

Это встроенный механизм Docker для перезапуска контейнеров при их выходе.
Если установлено, политики перезапуска будут использоваться, когда демон Docker запустится, как это обычно происходит после загрузки системы.

Например: только

on-failure[:max-retries] 

Перезагрузка, если контейнер выходит со статусом ненулевым.
При необходимости ограничьте число повторных попыток повтора попыток демона Docker.

Если нет, то смотрите «Automatically start containers»

+0

Спасибо, это замечательно и очень информативно. Даже дает два варианта. – nikk

Смежные вопросы