【问题标题】:Docker not installing Supervisor and crashing when it runsDocker未安装Supervisor并在运行时崩溃
【发布时间】:2021-12-19 09:03:45
【问题描述】:

我对 Docker 和 Supervisor 都是新手,但是我有一个 larvel 应用程序在工作,需要在其中运行三个单独的队列工作程序,所以我认为一个带有 Supervisor 的容器是个好主意......但是,尽可能多的容器上升。它似乎从未真正安装主管。我对它进行了炮轰,但它却不见了。我可以手动安装它就好了,但是当我运行我的 supervisord.config 时,我重复了同样的错误,似乎无法弄清楚为什么......任何建议都将不胜感激!

Dockerfile;

FROM ubuntu:latest

RUN \
  apt-get update && \
  apt-get install -y supervisor && \
  rm -rf /var/lib/apt/lists/* && \
  sed -i 's/^\(\[supervisord\]\)$/\1\nnodaemon=true/' /etc/supervisor/supervisord.conf

# Copy config file over
COPY /etc/supervisor/supervisord.conf /etc/supervisor/supervisord.conf

# Run Supervisor
CMD ["supervisord", "-c", "/etc/supervisor/supervisord.conf"]

Supervisord.conf;

[supervisord]
logfile=/var/log/supervisor/supervisord.log
pidfile=/var/run/supervisord.pid
user=root
nodaemon=true
[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php artisan queue:listen
directory=/tmp/
autostart=true
autorestart=true
numprocs=1
stopwaitsecs=10800

我现在已经从 supervisord.conf 中删除了另外两个程序,直到我至少让其中一个程序正常工作。唯一的区别是另外两个在命令行中为 laravel 设置了一个队列。

编辑;忘了说,我从 Supervisor 那里得到的错误是“退出状态 1”三次,因为 Supervisors 明显重启默认值,然后它致命的退出并停止。

【问题讨论】:

  • 您可以在不涉及 supervisord 的情况下在单独的容器中运行工作人员吗?

标签: laravel docker supervisord


【解决方案1】:

解决了这个问题!原来我不小心在与所有 apache 的东西相同的图像中运行主管容器,所以它发生了非常壮观的冲突。我在docker-compose中将容器运行supervisor改成了自己的镜像,突然就全部点击进去了!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-02-16
    • 2019-05-11
    • 2020-07-01
    • 1970-01-01
    • 2018-05-24
    • 1970-01-01
    • 1970-01-01
    • 2011-08-17
    相关资源
    最近更新 更多