如何在系统重启时自动启动 docker 容器?

nay*_*ari 53 server automation docker

由于我在 docker 容器中托管了一个 WordPress 站点,并且我希望这些容器始终在启动时启动,因此需要手动完成。

小智 44

在现有容器上添加重启策略是一个非常常见的用例。

这可以通过以下命令完成: docker update --restart {no,on-failure,unless-stopped,always} container_name

更多细节:Docker - 自动启动容器

  • 这完美地解决了我的问题!我有一个包含我的数据库的容器,并希望它在我的 Mac 启动时启动。通过指定它的图像总是重新启动(除非停止),这就成功了! (2认同)

May*_*hux 38

直到现在我认为没有办法正常做到这一点。一个棘手的解决方案是使用重启策略

sudo docker run --restart=always -d your_image
Run Code Online (Sandbox Code Playgroud)

这意味着每当您关闭时,这将退出您的容器,以便在您启动主机时重新启动 docker。

  • 为什么不为此使用系统可能性?upstart 和 systemd 都可以完美解决这个问题 (2认同)

Rei*_*hin 23

由于 ubuntu 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
Run Code Online (Sandbox Code Playgroud)

docker 站点上提供更多信息

PS 很可爱的配置 :)