26 lines
676 B
Docker
26 lines
676 B
Docker
FROM php:8.4-fpm
|
|
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
libpq-dev \
|
|
libzip-dev \
|
|
libicu-dev \
|
|
cron \
|
|
&& rm -rf /var/lib/apt/lists/* \
|
|
&& docker-php-ext-install pdo_pgsql intl \
|
|
&& pecl install redis \
|
|
&& docker-php-ext-enable redis \
|
|
&& groupadd -g 1000 appuser && useradd -u 1000 -g appuser -m appuser
|
|
|
|
COPY crontab /etc/cron.d/app-crontab
|
|
RUN chmod 0644 /etc/cron.d/app-crontab && crontab -u appuser /etc/cron.d/app-crontab
|
|
|
|
COPY entrypoint.sh /entrypoint.sh
|
|
RUN chmod +x /entrypoint.sh
|
|
|
|
WORKDIR /app
|
|
|
|
# cron daemon requires root to manage user crontabs, jobs run as appuser
|
|
USER root
|
|
|
|
CMD ["/entrypoint.sh"]
|