如何在后台Docker中运行Symfony命令

时间:2016-11-24 11:29:37

标签: symfony docker rabbitmq

我需要在Background中运行rabbitMQ使用者 如何在Docker Container中运行他?

2 个答案:

答案 0 :(得分:1)

请注意,它在很大程度上取决于您想要做什么,而您的问题还不清楚,但是如果您想在同一容器和同一个shell中启动命令,并且您对任何输出都不感兴趣。< / p>

然后它就像任何其他Linux进程一样:

command > /dev/null 2>&1 &

其中:

  • command是您要运行的随机命令
  • >/dev/null将每个stdout输出发送到黑洞
  • 2>&1stderr
  • 做同样的事情
  • &在后​​台运行

如果您不希望在关闭shell / user注销时终止命令,请使用nohup ...

nohup command > /dev/null 2>&1 &

答案 1 :(得分:1)

根据docker理念,您需要在单独的容器中运行它。 您可以重复使用您的代码,但它应该是单独的容器/甚至可能与您运行Web的容器不同。 您可以手动运行它: docker run -v /path/to/app:/container-dir -w /container-dir your-container php bin/console your:command --env prod

或者您可以使用docker-compose或任何其他工具

P.S。别忘了指定用户。您需要由运行Web实例的相同UID的用户运行它以避免文件访问问题