-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathContainerfile.apache
More file actions
80 lines (73 loc) · 2.67 KB
/
Copy pathContainerfile.apache
File metadata and controls
80 lines (73 loc) · 2.67 KB
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
ARG FREEBSD_RELEASE
ARG APACHEVER
ARG PHPVER
FROM ghcr.io/appjail-makejails/apache:${FREEBSD_RELEASE}-${APACHEVER}-php${PHPVER}
ARG PHPVER
ARG NO_PKGCLEAN
LABEL org.opencontainers.image.title="phpMyAdmin" \
org.opencontainers.image.description="Set of PHP-scripts to manage MySQL over the web" \
org.opencontainers.image.source="https://github.com/AppJail-makejails/phpmyadmin" \
org.opencontainers.image.url="https://github.com/AppJail-makejails/phpmyadmin" \
org.opencontainers.image.vendor="DtxdF" \
org.opencontainers.image.authors="Jesús Daniel Colmenares Oviedo <dtxdf@disroot.org>"
# set recommended PHP.ini settings
# see https://secure.php.net/manual/en/opcache.installation.php
ENV PMA_SSL_DIR=/usr/local/www/phpMyAdmin/ssl
ENV MAX_EXECUTION_TIME=600
ENV MEMORY_LIMIT=512M
ENV UPLOAD_LIMIT=2048K
ENV TZ=UTC
ENV SESSION_SAVE_PATH=/sessions
RUN set -xe; \
\
pkg update; \
pkg install -U phpMyAdmin5-php${PHPVER} \
gsed \
bash; \
\
if [ -z "${NO_PKGCLEAN}" ]; then \
pkg clean -a; \
rm -rf /var/cache/pkg/* /var/db/pkg/repos/*; \
fi; \
\
rm -rf /usr/local/www/apache24/data; \
ln -s /usr/local/www/phpMyAdmin /usr/local/www/apache24/data; \
\
mkdir $SESSION_SAVE_PATH; \
mkdir -p $PMA_SSL_DIR; \
chmod 1777 $SESSION_SAVE_PATH; \
chmod 755 $PMA_SSL_DIR; \
chown www:www $PMA_SSL_DIR; \
chown www:www $SESSION_SAVE_PATH; \
\
{ \
echo 'opcache.memory_consumption=128'; \
echo 'opcache.interned_strings_buffer=8'; \
echo 'opcache.max_accelerated_files=4000'; \
echo 'opcache.revalidate_freq=2'; \
echo 'opcache.fast_shutdown=1'; \
} > /usr/local/etc/php/opcache-recommended.ini; \
\
{ \
echo 'session.cookie_httponly=1'; \
echo 'session.use_strict_mode=1'; \
} > /usr/local/etc/php/session-strict.ini; \
\
{ \
echo 'allow_url_fopen=Off'; \
echo 'max_execution_time=${MAX_EXECUTION_TIME}'; \
echo 'max_input_vars=10000'; \
echo 'memory_limit=${MEMORY_LIMIT}'; \
echo 'post_max_size=${UPLOAD_LIMIT}'; \
echo 'upload_max_filesize=${UPLOAD_LIMIT}'; \
echo 'date.timezone=${TZ}'; \
echo 'session.save_path=${SESSION_SAVE_PATH}'; \
} > /usr/local/etc/php/phpmyadmin-misc.ini
COPY entrypoint.sh /entrypoint.sh
COPY --chown=www:www config.inc.php /usr/local/www/phpMyAdmin/config.inc.php
COPY --chown=www:www helpers.php /usr/local/www/phpMyAdmin/helpers.php
RUN chmod 555 /entrypoint.sh && \
chmod 644 /usr/local/www/phpMyAdmin/config.inc.php && \
chmod 644 /usr/local/www/phpMyAdmin/helpers.php
ENTRYPOINT ["/entrypoint.sh"]
CMD ["httpd-foreground"]