build(docker): use supervisord in unit image

This commit is contained in:
Romain de Laage 2023-03-22 11:53:38 +01:00
parent ae5e12be3b
commit 18f6b75dee
No known key found for this signature in database
GPG Key ID: B6B8919924DFF30B
3 changed files with 26 additions and 5 deletions

View File

@ -37,9 +37,10 @@ COPY docker/production/unit/entrypoint.sh /entrypoint.sh
COPY castopod /var/www/castopod
COPY docker/production/unit/config.json /config.json
COPY docker/production/unit/crontab.txt /crontab.txt
COPY docker/production/unit/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
RUN apt-get update && \
apt-get install -y ffmpeg curl libfreetype6-dev libjpeg62-turbo-dev libpng-dev libwebp-dev libxpm-dev libpcre2-8-0 libicu-dev && \
apt-get install -y supervisor ffmpeg curl libfreetype6-dev libjpeg62-turbo-dev libpng-dev libwebp-dev libxpm-dev libpcre2-8-0 libicu-dev && \
rm -rf /var/lib/apt/lists/* && \
pecl install -o -f redis && \
rm -rf /tmp/pear && \

View File

@ -191,7 +191,8 @@ EOF
fi
fi
unitd --no-daemon &
php spark castopod:database-update
sleep 2 && curl -X PUT --data-binary @/config.json --unix-socket /var/run/control.unit.sock http://localhost/config/
supercronic /crontab.txt
#Run database migrations after 10 seconds (to wait for the database to be started)
(sleep 10 && php spark castopod:database-update) &
#Apply configuration after unit is started
(sleep 2 && curl -X PUT --data-binary @/config.json --unix-socket /var/run/control.unit.sock http://localhost/config/) &
supervisord

View File

@ -0,0 +1,19 @@
[supervisord]
nodaemon=true
[program:supercronic]
command=supercronic /crontab.txt
autostart=true
autorestart=unexpected
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile=/dev/stderr
stderr_logfile_maxbytes=0
[program:unit]
command=unitd --no-daemon
autostart=true
autorestart=unexpected
stdout_logfile=/dev/stdout
stdout_logfile_maxbytes=0
stderr_logfile_maxbytes=0