配置
我已经在 Docker 容器中安装了 RabbitMQ 和 Celery 以尝试使用 Python 执行异步任务。 我使用多个控制台连接到正在运行的容器以启动服务并监视所有内容。一切运行良好。我可以开始一些任务并监控结果。
问题
当我启动 rabbitmq-server 时,我得到启动服务器(服务?)的输出到控制台。
如果我使用 Ctrl+C 退出“输出”,服务器将继续作为服务运行。 (我检查了“ps -ef”并运行了一些任务)
How is it possible to direct the "output" to the console again?
目前,我只是终止进程并重新运行 rabitmq-server。
我的结论和问题
我认为可以从 RabbitMQ 也记录到的文件中获取输出。
但这不是重点!
我不确定,但我认为目前(当我启动服务器时)输出被定向到 stdout 并且 stdout 是我的控制台。但是,如果我退出该“连接 - 附件”,我的控制台将停止从该服务获取标准输出。但是标准输出去哪儿了?它丢失了吗?它会导致任何错误吗?或者可能用日志记录填满磁盘空间?为什么有些服务启动时没有输出而其他服务启动时有?我可以连接到任何服务输出吗?
宽恕
这是我的第一个问题,如果结构不当或解释不当,我真的很抱歉。
谢谢
最佳答案
任何运行在docker中的服务在向console写入日志时,日志都会被重定向到docker的stdout,可以通过运行命令来检索
docker container logs CONTAINER_ID|CONTAINER_NAME
可以在这里阅读更多内容 https://takacsmark.com/docker-logs/
关于linux - 使用 Ctrl+C 退出后重新连接到 linux 服务输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58396579/