feat: allows configuring the worker service and processes via command options and env vars

This commit is contained in:
Brock H Caldwell
2025-11-04 12:19:37 -06:00
parent 9ca87af938
commit adb79db8f5
4 changed files with 41 additions and 74 deletions

View File

@@ -1,19 +1,29 @@
ARG FRANKENPHP_TAG
#####
# This version of Torsearch runs the scheduler, downloader, and worker
# in a single container. Each process is managerd by supervisord
# and can be configured via environment variables and more
# than one of these containers cans till be run.
#####
ARG ALPINE_VERSION="3.22"
FROM alpine:${ALPINE_VERSION} AS build_stage
FROM dunglas/frankenphp:${FRANKENPHP_TAG}
RUN apk add --no-cache \
curl \
php84 \
php84-curl \
php84-fileinfo \
php84-gd \
php84-mbstring \
php84-mysqli \
php84-opcache \
php84-openssl \
php84-pdo_mysql \
supervisor
ENV SERVER_NAME=":80"
ENV CADDY_GLOBAL_OPTIONS="auto_https off"
ENV APP_RUNTIME="Runtime\\FrankenPhpSymfony\\Runtime"
RUN ln -s /usr/bin/php84 /usr/bin/php
ARG APP_VERSION="0.dev"
ENV APP_VERSION="${APP_VERSION}"
RUN mkdir -p /etc/supervisor/conf.d
RUN install-php-extensions \
pdo_mysql \
gd \
intl \
zip \
opcache
RUN apk add --no-cache wget
# We start supervisord and supervisord starts
# respective service in the configuration file.
ENTRYPOINT ["/app/bin/console", "init:worker"]