我正试图在我的容器中启动一些服务。
这是我的entry_point脚本:
#!/bin/bash
set -e
mkdir -p /app/log
tail -n 0 -f /var/log/*.log &
tail -n 0 -f ./log/current.log &
# Start Gunicorn processes
#echo Starting Nginx.
#exec /etc/init.d/nginx start
echo Starting Gunicorn.
exec gunicorn app.main:app \
--name price_service \
-c config/gunicorn.conf \
"$@"
我想要解决的问题是:
#exec /etc/init.d/nginx start
但是在启动时,容器就悬挂在这里。
任何解决方案?
答案 0 :(得分:1)
您应该阅读http://man7.org/linux/man-pages/man3/exec.3.html以了解它正在做什么。
您需要的是使用&
(不推荐)来处理流程,或者使用流程管理器或init系统(请参阅Can I run multiple programs in a Docker container?,也不是真的推荐)。
或者您可以运行多个容器,并使用docker-compose
来管理它们(推荐)。