微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

docker systemd:如何在systemdBASH中设置服务时自动启动容器

如何解决docker systemd:如何在systemdBASH中设置服务时自动启动容器

我将使用以下命令运行docker容器 docker run -ti --rm -p 8080:80 -v $(pwd)/my/path/to/config myimage:latest 但是计划是在脚本中编写一个函数,以启动这些映像,同时在systemd中启动VM。 我必须在/ lib / systemd / system中设置服务吗?

解决方法

在您的Dockerfile中,最后添加

ENTRYPOINT service ssh restart && bash

,

从docker网站的文档中,

https://docs.docker.com/config/containers/start-containers-automatically/

您可以使用重启策略,参数为

使用重启策略 要为容器配置重启策略,请在使用docker run命令时使用--restart标志。 --restart标志的值可以是以下任意值:

Flag
说明

no
不要自动重启容器。 (默认)

on-failure
如果容器由于错误而退出,请重新启动容器,该错误表示为非零退出代码。

always
如果停止,请务必重新启动容器。如果手动停止,则仅在Docker守护程序重新启动或容器本身手动重新启动时才重新启动。 (请参阅重新启动策略详细信息中列出的第二个项目符号)

unless-stopped
与始终相似,除了在容器停止(手动或其他方式)时,即使重新启动Docker守护程序也不会重新启动容器。

如果这些方法不能满足您的要求,那么您可以使用有关进程管理器的信息,例如upstart,systemd或主管,请降低页面的高度。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。