This repository has been archived by the owner on Nov 27, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathDockerfile-8.2
60 lines (52 loc) · 1.8 KB
/
Dockerfile-8.2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
FROM ghcr.io/deck-app/nginx:v8.2
LABEL maintainer Naba Das <hello@get-deck.com>
# Persistent runtime dependencies
# Example RUN apk add --no-cache php82-openssl php82-sysvmsg php82-curl
COPY default.conf /etc/nginx/conf.d/default.conf
ARG SERVER_ROOT
RUN sed -i "s#{SERVER_ROOT}#${SERVER_ROOT}#g" /etc/nginx/conf.d/default.conf
VOLUME [ "/var/www/" ]
WORKDIR /var/www
#PHP display error enable or disable
ENV PHP_VERSION=82
ADD package.sh /package.sh
COPY php_ini/php.ini /etc/php${PHP_VERSION}/php.ini
ARG DISPLAY_PHPERROR
RUN if [ ${DISPLAY_PHPERROR} = true ]; then \
sed -i "s#{DISPLAY}#On#g" /etc/php${PHP_VERSION}/php.ini \
;else \
sed -i "s#{DISPLAY}#Off#g" /etc/php${PHP_VERSION}/php.ini \
;fi
## Linux permission issue
ARG USER_ID
ARG GROUP_ID
RUN apk --no-cache add shadow sudo php${PHP_VERSION}-pecl-mongodb
RUN usermod -u ${USER_ID} nobody && groupmod -g ${GROUP_ID} nobody
# sudo command without password
RUN echo "nobody ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
#Xdebug enable or disable
ARG XDEBUG
RUN if [ ${XDEBUG} = true ]; then \
apk add php${PHP_VERSION}-pecl-xdebug \
&& echo "zend_extension=xdebug" >> /etc/php${PHP_VERSION}/php.ini \
;fi
## nobody permission issue
COPY www.conf /etc/php${PHP_VERSION}/php-fpm.d/www.conf
COPY nginx.conf /etc/nginx/nginx.conf
RUN touch /env
RUN chown -R nobody:nobody /env
RUN chown -R nobody:nobody /sbin/
RUN chown -R nobody:nobody /etc/php82/
RUN chown -R nobody:nobody /etc/service/
RUN chown -R nobody:nobody /var/run/
RUN chown -R nobody:nobody /var/log/
RUN chown -R nobody:nobody /var/lib/nginx
RUN chown -R nobody:nobody /etc/nginx
ARG INSTALL_ADDITIONAL_EXTENSIONS
ENV INSTALL_ADDITIONAL_EXTENSIONS=$INSTALL_ADDITIONAL_EXTENSIONS
RUN if [ -z "$INSTALL_ADDITIONAL_EXTENSIONS" ] ; then \
echo "No additional PHP extensions added" \
;else \
bash /package.sh \
;fi
USER nobody