如何在docker中运行两个python应用程序
我想在docker中用不同的端口运行两个python应用程序 下面是我的shell脚本,名称是serverRun.sh如何在docker中运行两个python应用程序,python,web-services,docker,Python,Web Services,Docker,我想在docker中用不同的端口运行两个python应用程序 下面是我的shell脚本,名称是serverRun.sh exec python __server_code.py & exec python server_time_test.py & 在dockerfile中,我尝试运行这两个python应用程序 RUN ["chmod", "+x", "./serverRun.sh"] 它不起作用。有什么想法吗 您的shell脚本不能终止,因此请使用强睡眠将其锁定在while
exec python __server_code.py &
exec python server_time_test.py &
在dockerfile中,我尝试运行这两个python应用程序
RUN ["chmod", "+x", "./serverRun.sh"]
它不起作用。有什么想法吗 您的shell脚本不能终止,因此请使用强睡眠将其锁定在while循环中 Docker检测入口点的终止,并结束容器 最终,您可能希望求助于一个入口点(bash或其他脚本语言),该入口点能够检测应用程序崩溃,以便容器在出现故障时退出
我为您发布了一个功能齐全的Bash entrypoint,它可以实现这一点,还有更多功能。看起来您的run命令只是设置文件权限,实际上并没有执行脚本。也许可以更改run命令 前台必须有一个进程。所以去掉最后一个&。不要使用exec
cd /rfk-thrift/nlp_search
python __server_code.py &
python server_time_test.py
在Dockerfile中:
RUN chmod +x ./serverRun.sh
CMD ./serverRun.sh
RUN
指令仅在生成过程中引用。当您启动容器时,它将不会运行。您想使用ENTRYPOINT
或CMD
我更新了答案