1
1
FROM debian:bookworm-slim
2
2
3
3
ARG PHP_VERSION=8.3
4
-
5
4
ARG DEBIAN_FRONTEND=noninteractive
6
5
6
+ ARG HOST_UID
7
+ ARG HOST_GID
8
+
9
+ RUN groupadd -g ${HOST_GID} reconmappers && \
10
+ useradd -u ${HOST_UID} -g ${HOST_GID} -m -s /bin/bash reconmapper
11
+
7
12
RUN apt-get update && apt-get upgrade -y --fix-missing
8
13
RUN apt-get install -y wget unzip lsb-release
9
14
RUN wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
@@ -21,7 +26,7 @@ RUN wget --no-verbose https://getcomposer.org/installer -O - -q | php -- --insta
21
26
22
27
RUN apt-get install -y cron
23
28
COPY docker/api/crontab.txt /tmp/crontab
24
- RUN crontab /tmp/crontab && rm /tmp/crontab
29
+ RUN crontab -u reconmapper /tmp/crontab && rm /tmp/crontab
25
30
26
31
RUN sed -i "s/;clear_env = no/clear_env = no/" /etc/php/${PHP_VERSION}/fpm/pool.d/www.conf
27
32
RUN rm /etc/nginx/sites-enabled/default
@@ -30,13 +35,15 @@ COPY docker/api/nginx/sites-enabled/* /etc/nginx/sites-enabled/
30
35
RUN sed -i 's/upload_max_filesize = [[:digit:]]\+ M/upload_max_filesize = 20M/' /etc/php/${PHP_VERSION}/fpm/php.ini
31
36
RUN sed -i 's/post_max_size = [[:digit:]]\+ M/post_max_size = 28M/' /etc/php/${PHP_VERSION}/fpm/php.ini
32
37
38
+ RUN mkdir -p /var/www/webapp /var/www/webapp/data/vendor /var/www/webapp/data/attachments /var/www/webapp/logs && \
39
+ chown -R reconmapper:reconmappers /var/www/webapp
40
+
41
+ RUN chmod -R a+w /var/www/webapp/logs
42
+
33
43
WORKDIR /var/www/webapp
34
- COPY composer.json /var/www/webapp
35
- COPY composer.lock /var/www/webapp
36
- RUN composer install --no-ansi --no-dev --no-interaction --no-plugins --no-progress --no-scripts --optimize-autoloader
37
44
38
- RUN mkdir -p data/attachments && chown www-data data/attachments
39
- RUN mkdir logs && chown www-data logs && chmod a+w logs
45
+ COPY composer.json composer.lock /var/ www/webapp/
46
+ RUN composer install --no-ansi --no-dev --no-interaction --no-plugins --no-progress --no-scripts --optimize-autoloader
40
47
41
48
COPY public /var/www/webapp/public
42
49
COPY database/ /var/www/webapp/database/
@@ -47,5 +54,6 @@ COPY src/ /var/www/webapp/src/
47
54
VOLUME /var/www/webapp
48
55
49
56
COPY docker/api/entrypoint.sh /entrypoint
57
+
50
58
ENTRYPOINT ["/entrypoint" ]
51
59
CMD nginx -g 'daemon off;' && bash
0 commit comments