У меня возникли проблемы с тем, чтобы контейнер Docker оставался в рабочем состоянии, когда он запускается systemd. Когда я запускаю его вручную с помощью sudo docker start containername
, он работает без проблем, но когда он запускается через systemd с помощью sudo systemctl start containername
, он остается в течение 10 секунд, а затем таинственным образом умирает, оставляя сообщения в системном журнале примерно следующего содержания:
Mar 13 14:01:09 hostname docker[329]: time="2015-03-13T14:01:09Z" level="info" msg="POST /v1.17/containers/containername/stop?t=10"
Mar 13 14:01:09 hostname docker[329]: time="2015-03-13T14:01:09Z" level="info" msg="+job stop(containername)"
Я предполагаю, что systemd убивает процесс, но я не могу понять, почему это может происходить. Файл модуля systemd (/etc/systemd/system/имя_контейнера.service) довольно прост:
[Unit]
Description=MyContainer
After=docker.service
Requires=docker.service
[Service]
ExecStart=/usr/bin/docker start containername
ExecStop=/usr/bin/docker stop containername
[Install]
WantedBy=multi-user.target
Docker запускается нормально при загрузке, и похоже, что он даже запускает контейнер Docker, но независимо от того, загружается он или вручную, он завершает работу ровно через 10 секунд. Помощь принята с благодарностью!