docker - 在Docker容器中启动系统服务

标签 docker supervisord automount

我正在运行一个Docker容器,该应用程序需要在其中运行autofs服务,但默认情况下当前未运行该服务。该容器已经使用supervisord来管理多个后台进程,因此我认为我应该将该服务添加到主管的程序列表中。

有没有一种方法可以重复/etc/init.d/autofs中的大部分逻辑呢?就像是:

[program:autofs]
service = autofs

会很棒,但是supervisor不支持该语法。
我应该直接调用systemctlservice还是/etc/init.d/autofs吗?

最佳答案

您需要该服务在主机上运行吗?在这种情况下,您可能需要添加各种安装点,以便能够从容器与主机systemd交互,并使用systemctl手动启动服务。

我们在Atomic Host上使用的替代方法(也可以在其他系统上使用)用于管理容器中的系统服务,这就是我们所说的“系统容器”。我们使用systemd来管理runC容器。这样,您可以直接在systemd的模板配置文件中指定对另一个服务的依赖性。

关于docker - 在Docker容器中启动系统服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44765658/

相关文章:

mysql - 错误 :superset. views.core:意外错误没有名为 'pymysql' 的模块

python - 如何为 FreeSWITCH 配置 Supervisord?

cron - 使用主管作为 CRON

linux - Supervisord - 将进程标准输出重定向到控制台

linux - VirtualBox:启动时挂载共享文件夹失败,但从 shell 成功

linux - CentOS 7.2 Udev 规则无法自动挂载 USB 存储设备

heroku - 自定义buildpack中的权限被拒绝

docker - 在 ubuntu 镜像中安装 kotlin 出现错误

c# - 部署 ASP.NET Core Docker 项目 - 收到 405 错误(在我的 IIS 本地,Web 请求有效)。如何解决?