From 56e71afba75389a8a59d52fa9db3cfbc294b0b1b Mon Sep 17 00:00:00 2001 From: Christoph Reiter <reiter.christoph@gmail.com> Date: Thu, 4 Nov 2021 13:11:05 +0100 Subject: [PATCH] docker-composer: add a supervisor service --- composer.lock | 6 +++--- docker-dev/docker-compose.yml | 12 ++++++++++++ docker-dev/php-fpm/Dockerfile | 1 + docker-dev/php-fpm/queue-worker.conf | 25 +++++++++++++++++++++++++ 4 files changed, 41 insertions(+), 3 deletions(-) create mode 100644 docker-dev/php-fpm/queue-worker.conf diff --git a/composer.lock b/composer.lock index 8c0e8aa..2b7cd0c 100644 --- a/composer.lock +++ b/composer.lock @@ -352,11 +352,11 @@ }, { "name": "dbp/relay-core-bundle", - "version": "v0.1.20", + "version": "v0.1.21", "source": { "type": "git", "url": "https://gitlab.tugraz.at/dbp/relay/dbp-relay-core-bundle", - "reference": "94264cb880989d8937749a02826e911dd2b819df" + "reference": "f89f53fa7fe19ed211df68e6f6b8fd682de717dc" }, "require": { "api-platform/core": "^2.6.3", @@ -412,7 +412,7 @@ "license": [ "AGPL-3.0-or-later" ], - "time": "2021-11-04T11:06:30+00:00" + "time": "2021-11-04T12:09:56+00:00" }, { "name": "doctrine/annotations", diff --git a/docker-dev/docker-compose.yml b/docker-dev/docker-compose.yml index 397c626..2d2ea0d 100644 --- a/docker-dev/docker-compose.yml +++ b/docker-dev/docker-compose.yml @@ -21,6 +21,18 @@ services: - ./php-fpm/php-ini-overrides.ini:/etc/php/7.3/fpm/conf.d/99-overrides.ini - ./php-fpm/php-fpm-overrides.conf:/etc/php/7.3/fpm/pool.d/z-overrides.conf + queue-worker: + environment: + - TERM_PROGRAM=Hyper # force colors for the symfony dumper + build: + context: php-fpm + working_dir: /application + entrypoint: sudo supervisord -c /etc/supervisor/conf.d/queue-worker.conf + volumes: + - ./php-fpm/queue-worker.conf:/etc/supervisor/conf.d/queue-worker.conf + - ..:/application + - ./php-fpm/php-ini-overrides.ini:/etc/php/7.3/cli/conf.d/99-overrides.ini + redis: image: "redis" diff --git a/docker-dev/php-fpm/Dockerfile b/docker-dev/php-fpm/Dockerfile index 5cdb6da..172950c 100644 --- a/docker-dev/php-fpm/Dockerfile +++ b/docker-dev/php-fpm/Dockerfile @@ -34,6 +34,7 @@ RUN wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg php7.3-gmp \ php7.3-xdebug \ composer \ + supervisor \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* diff --git a/docker-dev/php-fpm/queue-worker.conf b/docker-dev/php-fpm/queue-worker.conf new file mode 100644 index 0000000..e84b846 --- /dev/null +++ b/docker-dev/php-fpm/queue-worker.conf @@ -0,0 +1,25 @@ +[supervisord] +# so the process is sync +nodaemon=true +# so we don't write a log file +logfile=/dev/null +logfile_maxbytes=0 +# so the log file isn't written to the volume +pidfile=/supervisord.pid + +[program:queue-work] +command=php /application/bin/console dbp:relay:core:queue:work "%(program_name)s_%(process_num)02d" +user=user +numprocs=2 +startsecs=0 +autostart=true +autorestart=true +process_name=%(program_name)s_%(process_num)02d + +# to forward stdout/stderr to supervisord +stdout_events_enabled=true +stderr_events_enabled=true +stdout_logfile_maxbytes=0 +stderr_logfile_maxbytes=0 +stdout_logfile=/dev/stdout +stderr_logfile=/dev/stderr -- GitLab