使用主管启动多个 Docker 容器
Launching multiple Docker containers with supervisor
我有一些 Docker 个容器,我想开始使用 supervisor
。我遇到的问题是主管要求命令被阻止以跟踪它们。
不幸的是,命令 docker run my/container:tag
是非阻塞的,即它 returns 立即生成一个进程。
docker 容器启动(实际上是 2 个,有时是 4 个可能相关的实例),但主管指示错误 "FATAL Exited too quickly (process log may have details)"。
supervisor 可以用于 运行 Docker 容器吗?
更新
我在一些较早的试验中也启用了 -d
选项,这导致 -i
无法按预期工作(它们不是相反,它们不应该提示某种错误吗? ).当我 运行 在我的 supervisor.conf
中使用 -i
时,我得到这个错误 time="2015-06-27T14:14:29+10:00" level=fatal msg="cannot enable tty mode on non tty input"
.
我也尝试过在没有 -i
的情况下 运行,它成功地启动了 docker 容器。不幸的是 sudo supervisorctl stop app
实际上并没有停止 docker 容器。主管无法控制 docker 还是我真的需要使用 -i
选项 运行 并以某种方式修复此 tty 错误?
更新 2
tty 错误来自于我的 docker run
命令中也有 -t
选项。我删除了它。但是,supervisorctl
还是挡不住docker运行。虽然当 运行ning 和 supervisorctl status app
说它已经停止时它没有给出错误 docker ps
我看到容器实际上仍然是 运行ning.
如果您 运行 您的容器带有 -i
option,它将阻塞
docker run -i my/container:tag
您需要 运行 容器处于交互模式。这将是阻塞调用,如果您一直阻塞直到新进程退出,那么以下是正确的命令:
docker run -i -t my/container:tag
我有一些 Docker 个容器,我想开始使用 supervisor
。我遇到的问题是主管要求命令被阻止以跟踪它们。
不幸的是,命令 docker run my/container:tag
是非阻塞的,即它 returns 立即生成一个进程。
docker 容器启动(实际上是 2 个,有时是 4 个可能相关的实例),但主管指示错误 "FATAL Exited too quickly (process log may have details)"。
supervisor 可以用于 运行 Docker 容器吗?
更新
我在一些较早的试验中也启用了 -d
选项,这导致 -i
无法按预期工作(它们不是相反,它们不应该提示某种错误吗? ).当我 运行 在我的 supervisor.conf
中使用 -i
时,我得到这个错误 time="2015-06-27T14:14:29+10:00" level=fatal msg="cannot enable tty mode on non tty input"
.
我也尝试过在没有 -i
的情况下 运行,它成功地启动了 docker 容器。不幸的是 sudo supervisorctl stop app
实际上并没有停止 docker 容器。主管无法控制 docker 还是我真的需要使用 -i
选项 运行 并以某种方式修复此 tty 错误?
更新 2
tty 错误来自于我的 docker run
命令中也有 -t
选项。我删除了它。但是,supervisorctl
还是挡不住docker运行。虽然当 运行ning 和 supervisorctl status app
说它已经停止时它没有给出错误 docker ps
我看到容器实际上仍然是 运行ning.
如果您 运行 您的容器带有 -i
option,它将阻塞
docker run -i my/container:tag
您需要 运行 容器处于交互模式。这将是阻塞调用,如果您一直阻塞直到新进程退出,那么以下是正确的命令:
docker run -i -t my/container:tag