You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

52 lines
1.4 KiB

FROM docker.io/serversideup/php:8.4-fpm-nginx-alpine3.21
USER root
# PHP
RUN install-php-extensions imagick gd bcmath
# S6
COPY ./etc/s6-overlay/s6-rc.d/movim-migrations/ /etc/s6-overlay/s6-rc.d/movim-migrations/
COPY ./etc/s6-overlay/s6-rc.d/movim-daemon/ /etc/s6-overlay/s6-rc.d/movim-daemon/
COPY ./etc/s6-overlay/s6-rc.d/tail-log/ /etc/s6-overlay/s6-rc.d/tail-log/
RUN touch /etc/s6-overlay/s6-rc.d/user/contents.d/movim-migrations
RUN touch /etc/s6-overlay/s6-rc.d/user/contents.d/movim-daemon
RUN touch /etc/s6-overlay/s6-rc.d/user/contents.d/tail-log
# nginx websocket
COPY /etc/nginx/conf.d/movim-websocket.conf /etc/nginx/server-opts.d/
# Movim
ENV SSL_MODE=full
ENV PHP_OPCACHE_ENABLE=1
ENV DAEMON_INTERFACE=127.0.0.1
ENV DAEMON_PORT=8083
ENV NGINX_WEBROOT=/var/www/html/public
WORKDIR /var/www/html
# Setup some directories
RUN mkdir cache; \
chown -R www-data:www-data cache; \
mkdir log; \
chown -R www-data:www-data log
# install 3rd party dependencies
COPY composer.lock composer.json .
RUN composer install
COPY .php_cs phinx.php daemon.php VERSION .
COPY config ./config
COPY locales ./locales
COPY public ./public
RUN mkdir -p public/cache; \
chown -R www-data:www-data public/cache; \
mkdir public/images; \
chown -R www-data:www-data public/images
COPY workers ./workers
COPY database ./database
COPY src ./src
COPY app ./app
USER www-data