我猜我的 docker 容器设置有点糟糕。因为每次我从 django 运行任务时,我都会在 docker 容器输出中看到ps aux
创建了新进程python mange.py rqworker mail
而不是使用现有进程。请参阅截屏视频:https ://imgur.com/a/HxUjzJ5
在我的 docker compose for rq worker 容器中执行的过程command
如下所示。
#!/bin/sh -e
wait-for-it
for KEY in $(redis-cli -h $REDIS_HOST -n 2 KEYS "rq:worker*"); do
redis-cli -h $REDIS_HOST -n 2 DEL $KEY
done
if [ "$ENVIRONMENT" = "development" ]; then
python manage.py rqworkers --worker-class rq.SimpleWorker --autoreload;
else
python manage.py rqworkers --worker-class rq.SimpleWorker --workers 4;
fi
我是 docker 新手,有点想知道这是在没有 deamonization 的情况下像这样开始的......但这是一种 dockerish 的做事方式,对吗?