我试图让一个码头工人容器永不停机
如果我运行带有-d
标志的docker容器,则容器将在后台运行。
例如,可以这样做:
- 使用
启动docker容器-it
标记- 启动入口点应用程序
- 入口点应用程序创建10个其他服务/进程以在同一容器中运行
- 入口点应用程序终止
醇>
现在,入口点中提到的应用程序已经退出了?#/ p>,这个docker容器是否会保持运行状态
答案 0 :(得分:1)
你为什么不试试? AFAIU -d
或-it
不会影响容器终止。我想你明白,启动这10个进程意味着你违反了docker对每个容器一个进程的想法。你为什么不开始10个容器呢?您也可以从启动容器中执行此操作,即使启动容器将终止,它们也将继续运行。
您还可以尝试使用泊坞窗文档:https://docs.docker.com/articles/host_integration/
答案 1 :(得分:1)
-it
标志表示您希望标准输入和输出路由到容器或从容器路由。这基本上和概念上都与永远运行不兼容。
通常,当入口点退出时,容器将关闭。如果你想保持容器运行,你应该运行一个(可能是最后一个应用程序)而不是作为后台守护进程而是在前台运行。例如,如果nginx是您要运行的最后一个服务。你最后一行入口点脚本(如果那是一个shell脚本)应该是这样的:
nginx -g "daemon off;"