11# ## Extensions
2- FROM php:8.1 -apache as extensions
2+ FROM php:8.2 -apache as extensions
33
44LABEL stage=intermediate
55
@@ -54,41 +54,48 @@ opcache.fast_shutdown=0\n\
5454' >> /usr/local/etc/php/conf.d/docker-php-ext-opcache.ini
5555
5656# ## Composer
57- FROM php:8.1 -apache as api
57+ FROM php:8.2 -apache as api
5858
5959COPY --from=extensions /usr/local/etc/php/conf.d/docker-php-ext-bcmath.ini /usr/local/etc/php/conf.d/docker-php-ext-bcmath.ini
6060COPY --from=extensions /usr/local/etc/php/conf.d/docker-php-ext-intl.ini /usr/local/etc/php/conf.d/docker-php-ext-intl.ini
61- COPY --from=extensions /usr/local/lib/php/extensions/no-debug-non-zts-20210902 /intl.so /usr/local/lib/php/extensions/no-debug-non-zts-20210902 /intl.so
62- COPY --from=extensions /usr/local/lib/php/extensions/no-debug-non-zts-20210902 /bcmath.so /usr/local/lib/php/extensions/no-debug-non-zts-20210902 /bcmath.so
61+ COPY --from=extensions /usr/local/lib/php/extensions/no-debug-non-zts-20220829 /intl.so /usr/local/lib/php/extensions/no-debug-non-zts-20220829 /intl.so
62+ COPY --from=extensions /usr/local/lib/php/extensions/no-debug-non-zts-20220829 /bcmath.so /usr/local/lib/php/extensions/no-debug-non-zts-20220829 /bcmath.so
6363
6464LABEL stage=intermediate
6565
6666WORKDIR /api
6767
6868# install git
69- RUN apt-get update && \
69+ RUN set -eux; \
70+ chown www-data:www-data /api; \
71+ apt-get update && \
7072 apt-get install -y zip unzip git
7173
72- COPY composer.json composer.lock /api/
74+ COPY --chown=www-data:www-data composer.json composer.lock /api/
7375
74- COPY --from=composer /usr/bin/composer /usr/bin/composer
76+ COPY --chmod=777 -- from=composer /usr/bin/composer /usr/bin/composer
7577
76- RUN /usr/bin/composer install --no-dev \
78+ USER www-data
79+
80+ RUN set -eux; \
81+ /usr/bin/composer install --no-dev \
7782 --ignore-platform-reqs \
7883 --no-ansi \
7984 --no-autoloader \
8085 --no-interaction \
8186 --no-scripts
8287
83- COPY / /api
88+ COPY --chown=www-data:www-data / /api
8489
8590RUN rm -rf storage/app/api/scunpacked-data
8691RUN git clone https://github.com/StarCitizenWiki/scunpacked-data --branch=master --depth=1 storage/app/api/scunpacked-data
8792
8893RUN /usr/bin/composer dump-autoload --optimize --classmap-authoritative
8994
9095# ## Final Image
91- FROM php:8.1-apache
96+ FROM php:8.2-apache
97+
98+ USER root
9299
93100RUN apt-get update && \
94101 apt-get install -y --no-install-recommends \
@@ -99,27 +106,25 @@ RUN apt-get update && \
99106
100107WORKDIR /var/www/html
101108
102- COPY --from=api /api /var/www/html
109+ COPY --chown=www-data:www-data -- from=api /api /var/www/html
103110COPY ./docker/vhost.conf /etc/apache2/sites-available/000-default.conf
104- COPY ./docker/start.sh /usr/local/bin/start
111+ COPY --chown=www-data:www-data --chmod=770 ./docker/start.sh /usr/local/bin/start
105112
106113COPY --from=extensions /usr/local/etc/php/conf.d/*.ini /usr/local/etc/php/conf.d/
107- COPY --from=extensions /usr/local/lib/php/extensions/no-debug-non-zts-20210902 /*.so /usr/local/lib/php/extensions/no-debug-non-zts-20210902 /
114+ COPY --from=extensions /usr/local/lib/php/extensions/no-debug-non-zts-20220829 /*.so /usr/local/lib/php/extensions/no-debug-non-zts-20220829 /
108115
109116RUN sed -i -e "s/extension=zip.so/;extension=zip.so/" /usr/local/etc/php/conf.d/docker-php-ext-zip.ini && \
110117 echo 'memory_limit = 512M' >> /usr/local/etc/php/conf.d/docker-php-memlimit.ini && \
111118 echo 'max_execution_time = 60' >> /usr/local/etc/php/conf.d/docker-php-executiontime.ini
112119
113- COPY ./docker/schedule.sh /usr/local/bin/schedule
120+ COPY --chown=www-data:www-data --chmod=770 ./docker/schedule.sh /usr/local/bin/schedule
114121
115- RUN chown -R www-data:www-data /var/www/html; \
116- chmod u+x /usr/local/bin/start; \
117- chmod -R u+w /var/www/html/storage; \
118- chmod -R g+w /var/www/html/storage; \
119- chown www-data:www-data /usr/local/bin/schedule; \
120- chmod +x /usr/local/bin/schedule; \
122+ RUN chmod -R u+w,g+w /var/www/html/storage; \
121123 a2enmod rewrite
122124
123- USER root
125+ USER www-data
126+
127+ RUN php artisan storage:link; \
128+ php artisan optimize
124129
125130CMD ["/usr/local/bin/start" ]
0 commit comments