mirror of
https://github.com/cedar2025/Xboard.git
synced 2025-02-10 18:58:14 -05:00
32 lines
1.2 KiB
Docker
32 lines
1.2 KiB
Docker
FROM phpswoole/swoole:php8.2-alpine
|
|
|
|
COPY --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/
|
|
|
|
# Install PHP extensions one by one with lower optimization level for ARM64 compatibility
|
|
RUN CFLAGS="-O1" install-php-extensions pcntl && \
|
|
CFLAGS="-O1" install-php-extensions bcmath && \
|
|
install-php-extensions zip && \
|
|
install-php-extensions redis && \
|
|
apk --no-cache add shadow sqlite mysql-client mysql-dev mariadb-connector-c git patch supervisor redis && \
|
|
addgroup -S -g 1000 www && adduser -S -G www -u 1000 www && \
|
|
(getent group redis || addgroup -S redis) && \
|
|
(getent passwd redis || adduser -S -G redis -H -h /data redis)
|
|
|
|
WORKDIR /www
|
|
COPY .docker /
|
|
COPY . /www
|
|
COPY .docker/supervisor/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
|
|
|
|
RUN composer install --optimize-autoloader --no-cache --no-dev \
|
|
&& php artisan storage:link \
|
|
&& chown -R www:www /www \
|
|
&& chmod -R 775 /www \
|
|
&& mkdir -p /data \
|
|
&& chown redis:redis /data
|
|
|
|
ENV ENABLE_WEB=true \
|
|
ENABLE_HORIZON=true \
|
|
ENABLE_REDIS=false
|
|
|
|
EXPOSE 7001
|
|
CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor/conf.d/supervisord.conf"] |