【发布时间】:2015-03-19 07:02:34
【问题描述】:
我正在尝试在 docker 中启动一个具有许多 init 和 upstart 服务的系统,但出现此错误。
initctl: Unable to connect to Upstart:
Failed to connect to socket /com/ubuntu/upstart: Connection refused
所有变通方法都建议建立到 /bin/true 的硬链接以消除错误。但是我需要让这些服务由 upstart 管理,以实现重启能力和 upstart 发出事件的工作......
由于 docker 似乎不支持这一点,我正在考虑编写脚本以启动 /etc/rcX.d 中的所有服务并跟踪 PID 的严重黑客攻击。这并不能解决暴发户缺乏发射事件的问题。
任何其他想法如何在 docker 中启动新贵进程?
【问题讨论】:
-
docker的哲学是运行一个进程,如果你想运行几个,看看supervisor docs.docker.com/articles/using_supervisord
-
supervisor 似乎几乎等同于暴发户的一个子集,但感谢您的指点;它可能必须这样做。给定一个大型的 init 脚本遗留系统,将它们转换过来并不理想,也不可能将它们作为单独的 docker 运行。