Docker 从组合文件加载后容器立即存在(退出代码 0)
Docker container immediately exists after loading from compose file (exit code 0)
也许我遗漏了一些明显的东西,但我只是尝试将 firebase-tools docker 图像添加到我的 docker-compose 文件中:
version: '3.6'
services:
firebase-tools-test:
tty: true
image: andreysenov/firebase-tools
ports:
- 9099:9099
- 4000:4000
- 5000:5000
- 5001:5001
- 9199:9199
- 9005:9005
- 9000:9000
- 8085:8085
- 8080:8080
Howeber 当 运行 它立即存在,退出代码为 0。日志根本不显示任何内容,我想知道这是否是一个简单的错误配置,以及如何获得更详细的日志记录以了解原因它正在退出。
Docker 默认情况下不会保留您的容器 运行。如果事情完成,它将退出。要使其等待输入,请使用 docker run -it
进行交互或使用 docker run -dt
进行分离模式来创建 TTY。对于 compose 它将是 tty: true
,或者你用
之类的东西覆盖给定的 CMD
entrypoint: ["tail"]
command: ["-f","/dev/null"]
或 command: tail -F anything
或其他模仿保持进程 运行 永远..
备注:这是可行的,因为无论如何容器只是 运行 sh
。如果 CMD
中有不同的东西,你必须调用它并通过 command: <command to start container logic> && tail -F anything
或类似的东西链接到上面。
也许我遗漏了一些明显的东西,但我只是尝试将 firebase-tools docker 图像添加到我的 docker-compose 文件中:
version: '3.6'
services:
firebase-tools-test:
tty: true
image: andreysenov/firebase-tools
ports:
- 9099:9099
- 4000:4000
- 5000:5000
- 5001:5001
- 9199:9199
- 9005:9005
- 9000:9000
- 8085:8085
- 8080:8080
Howeber 当 运行 它立即存在,退出代码为 0。日志根本不显示任何内容,我想知道这是否是一个简单的错误配置,以及如何获得更详细的日志记录以了解原因它正在退出。
Docker 默认情况下不会保留您的容器 运行。如果事情完成,它将退出。要使其等待输入,请使用 docker run -it
进行交互或使用 docker run -dt
进行分离模式来创建 TTY。对于 compose 它将是 tty: true
,或者你用
CMD
entrypoint: ["tail"]
command: ["-f","/dev/null"]
或 command: tail -F anything
或其他模仿保持进程 运行 永远..
备注:这是可行的,因为无论如何容器只是 运行 sh
。如果 CMD
中有不同的东西,你必须调用它并通过 command: <command to start container logic> && tail -F anything
或类似的东西链接到上面。