容器启动时脚本:entrypoint.sh依次启动4个Python脚本
Docker 容器启动时,通过一个 entrypoint.sh 依次启动 4 个 Python 脚本。
1. 最基本的 entrypoint.sh 写法(顺序执行)
如果你希望 前一个执行完才执行下一个(阻塞式),可以这样:
1 |
|
问题:
- 如果前面的脚本不退出(例如服务常驻),后面的永远不会启动。
- 这种模式一般不适合需要多个进程同时跑的情况。
2. 并行启动多个进程
更常见的是多个 Python 服务要同时运行:
1 |
|
解释:
&表示后台运行,不阻塞后续启动。wait确保容器不会提前退出,直到所有进程结束。确保
entrypoint.sh有执行权限:
1 | chmod +x entrypoint.sh |
3. Dockerfile配置
1 | COPY entrypoint.sh /entrypoint.sh |