在docker入口点启动多个服务
我试图在星星的时候在我的容器中启动一些服务。
这是我的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
但在启动时,容器就挂在这里。
任何解决scheme
你应该阅读http://man7.org/linux/man-pages/man3/exec.3.html来看看它在做什么。
您需要的是使用&
(不推荐)背景进程,或者使用进程pipe理器或init系统(请参阅我是否可以在Docker容器中运行多个程序?
或者你可以运行多个容器,并使用docker-compose
来pipe理它们(推荐)。