Так как я размещал сайт WordPress в докер-контейнерах и хочу, чтобы эти контейнеры запускались всегда во время загрузки, нужно делать это вручную.
До настоящего времени я не думаю, что существует способ обычно делать это. Хитрое решение состоит в том, чтобы использовать политика перезапуска
sudo docker run --restart=always -d your_image
, Это означает каждый раз, когда Вы закрываетесь, это выйдет из Вашего контейнера поэтому, поскольку Вы запускаете свой хост тогда этот вывод для перезапуска докера.
То, что я сделал, должно использовать Новомодные файлы.
можно найти некоторые примеры и другие решения в веб-сайт Докера .
Создают файл такой как этот в/etc/init:
Description "My container"
start on filesystem and started docker
stop on runlevel [!2345]
respawn
script
/usr/bin/docker start -a mycontainer
end script
pre-stop script
/usr/bin/docker stop mycontainer
end script
Примечание, как от Докера 1.2, существует политики перезапуска , который может также помочь автоматически перезапустить контейнеры, когда услуги докера выполняются (после того, как загрузитесь, например).
Personnaly, я использую марионетку, чтобы настроить мою рабочую станцию и использовать этот модуль Докера для автоматического создания сценарии запуска , которые являются больше завершенным (запустите, остановите, перезапустите, чистые опции...)
Поскольку человечность 15 теперь поддерживает systemd, образец для этого менеджера:
someservicename.service
[Unit]
Description=Some service
Requires=docker.service
After=docker.service
[Service]
Restart=always
ExecStart=/usr/bin/docker start -a container_name
ExecStop=/usr/bin/docker stop -t 2 container_name
[Install]
WantedBy=multi-user.target
, более доступный на сайт докера
P.S. Довольно милая конфигурация:)
Это - случай очень общего использования для добавления политики перезапуска в отношении существующего контейнера.
Это могло быть сделано со следующей командой: docker update --restart {no,on-failure,unless-stopped,always} container_name
Подробнее: Докер - Запускает контейнеры автоматически