mirror of
https://github.com/devilbox/docker-php-fpm.git
synced 2025-12-11 19:41:16 +00:00
Compare commits
109 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ff6afb7296 | ||
|
|
8a4736f1e4 | ||
|
|
c246645ed8 | ||
|
|
c8a55c36e9 | ||
|
|
7902a6a1ab | ||
|
|
04a24b69b6 | ||
|
|
cf21dc3ea7 | ||
|
|
864e503563 | ||
|
|
f42a90758f | ||
|
|
5a805fb015 | ||
|
|
bd336c9e09 | ||
|
|
cb176f5eba | ||
|
|
cb31f9ac1f | ||
|
|
fe0f94e73d | ||
|
|
726fe86700 | ||
|
|
b03a857a42 | ||
|
|
cd52db5029 | ||
|
|
577a85ae9f | ||
|
|
eca4f371e3 | ||
|
|
0975d97ca3 | ||
|
|
5aa7a77aba | ||
|
|
2de416c7cd | ||
|
|
6ad00ccb3f | ||
|
|
694a7c0fea | ||
|
|
523c936f65 | ||
|
|
f9e78cf418 | ||
|
|
8661871431 | ||
|
|
ad4ea63cb8 | ||
|
|
89cd367c1e | ||
|
|
99754afd72 | ||
|
|
b2a7e7b041 | ||
|
|
9c9d325724 | ||
|
|
1b6799da58 | ||
|
|
b66ddfbd3e | ||
|
|
1663d3af7d | ||
|
|
46512b05a1 | ||
|
|
a95be98d1c | ||
|
|
ba0709f3f0 | ||
|
|
329e7bf2ec | ||
|
|
d84cc5708c | ||
|
|
21177a801c | ||
|
|
d9ae1e9ff5 | ||
|
|
c6750acfce | ||
|
|
5751f9ae96 | ||
|
|
72b675fa2a | ||
|
|
1c867e1cfc | ||
|
|
e3512da650 | ||
|
|
b2dc2c7704 | ||
|
|
a3819e9add | ||
|
|
c4a75f61a5 | ||
|
|
d081de866b | ||
|
|
4c09729cf3 | ||
|
|
c7389796b4 | ||
|
|
9398cefbe2 | ||
|
|
a1092be181 | ||
|
|
42b811f068 | ||
|
|
6507383d94 | ||
|
|
85f36d7c6b | ||
|
|
8ed060fd60 | ||
|
|
a4924537de | ||
|
|
de3b0dcc17 | ||
|
|
920d656cc1 | ||
|
|
41581bf9a3 | ||
|
|
aab7599eab | ||
|
|
16c113d404 | ||
|
|
90458c9b29 | ||
|
|
7c498fd369 | ||
|
|
9ee2da9fa3 | ||
|
|
1df74274a1 | ||
|
|
182eda1f05 | ||
|
|
44e365b14c | ||
|
|
a40f3a4307 | ||
|
|
9d8167ca77 | ||
|
|
b34ad1daae | ||
|
|
bdcbee385d | ||
|
|
f5bdccca57 | ||
|
|
3361ca6ea3 | ||
|
|
e4a2f320cc | ||
|
|
ae1b9f3551 | ||
|
|
bb55aa1d8e | ||
|
|
e2e2726e66 | ||
|
|
7e35dd8990 | ||
|
|
25953b844d | ||
|
|
2f681bc554 | ||
|
|
48227f54d6 | ||
|
|
bfde73c136 | ||
|
|
df2a62f262 | ||
|
|
41ce37529e | ||
|
|
b9c2e5ff41 | ||
|
|
d43225721e | ||
|
|
6bc85d4878 | ||
|
|
ce2069d37b | ||
|
|
08e1f633fe | ||
|
|
8b49cd6184 | ||
|
|
e072524dfd | ||
|
|
3856e8d61a | ||
|
|
116edfb3d2 | ||
|
|
504d98b9c9 | ||
|
|
2641449b43 | ||
|
|
69994acba3 | ||
|
|
199efdcdf3 | ||
|
|
a6b1fa82a9 | ||
|
|
070e7ad7e9 | ||
|
|
02d9e64233 | ||
|
|
cb1ff74b4d | ||
|
|
741933918b | ||
|
|
b84d05844f | ||
|
|
29baa10b85 | ||
|
|
7af0b2c98b |
@@ -23,12 +23,15 @@ env:
|
||||
# DOCKER_PASSWORD
|
||||
- secure: "ZRrVOVOkSCS2UxEi1HNF1iKefK4sDT/sPRl1HxMQjLnRRaAMdG0aRnBwQf2YAM2qzhCfN85qt6zZtC4awc2mHiZ88JrAZxBjK6xj4BwOyLbDuzpBsKXnx8Nix+wyYYKSjsC3LOYrsUe+4rvkw3tVvVaX8G2llojwdksF34VDmmHBmzCG/Bsexk7UqC+qw0PZm7BtctQO+IL0btmMDijRDElxfR+AuPvf9JdkhYzw9TOO7Jqd53NssNVGyL+XSV0dfGn8PkZTp1e8D+28pLK4oGVog+Wk7Cq94hSGjk5AkWKvL5441rupG1AA8K3njeDNMKdov4o+dmnkAH7Jh8tjShMhNhoxHce3IzpczjhoE1EyYQcyPf1qdfhV35Xv096iWX5809pp1MZF2oE5eism8JaU9NpGClryVbKVKtup8ko9/tCqz01Czq5Vue40feMkGtdePulg59OhyyPLYldsObw8QlZydkrmgVZe6b+GyybeiHraTfDq4pvTgUrC4Cmm5J3IB5Ig1THEiYKHfRJ5hSSMDDODeBXc8Xh6mFssEVshNx/jbUQWuAVYQFw/GIquVHxr6btbevrWIoD+zmqcc0L98u9pYH8w7b+gMgVJNCC4QQz2NCGGWw9l9/TmLrKJgeXbG18n8D314le1zuna6/VfH9pXIlbNO4hgz5NLHJk="
|
||||
matrix:
|
||||
- PHP=5.2
|
||||
- PHP=5.3
|
||||
- PHP=5.4
|
||||
- PHP=5.5
|
||||
- PHP=5.6
|
||||
- PHP=7.0
|
||||
- PHP=7.1
|
||||
- PHP=7.2
|
||||
- PHP=7.3
|
||||
|
||||
|
||||
###
|
||||
@@ -86,16 +89,13 @@ before_script:
|
||||
- ./build/gen-readme.sh "${PHP}"
|
||||
- git diff --quiet || { echo "Build Changes"; git diff; git status; false; }
|
||||
|
||||
# Integration tests
|
||||
- true
|
||||
|
||||
|
||||
###
|
||||
### Push to Dockerhub
|
||||
###
|
||||
script:
|
||||
- if [ "${TRAVIS_PULL_REQUEST}" == "false" ]; then
|
||||
docker login --username "${DOCKER_USERNAME}" --password "${DOCKER_PASSWORD}" &&
|
||||
echo "${DOCKER_PASSWORD}" | docker login --username "${DOCKER_USERNAME}" --password-stdin &&
|
||||
if [ "${TRAVIS_BRANCH}" == "master" ]; then
|
||||
docker push "${IMAGE}:${PHP}-base";
|
||||
docker push "${IMAGE}:${PHP}-mods";
|
||||
|
||||
86
Dockerfiles/base/Dockerfile-5.2
Normal file
86
Dockerfiles/base/Dockerfile-5.2
Normal file
@@ -0,0 +1,86 @@
|
||||
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-base.j2 instead.
|
||||
FROM devilbox/php-fpm-5.2
|
||||
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
||||
|
||||
|
||||
###
|
||||
### Labels
|
||||
###
|
||||
LABEL \
|
||||
name="cytopia's PHP-FPM 5.2 Image" \
|
||||
image="devilbox/php-fpm" \
|
||||
tag="5.2-base" \
|
||||
vendor="devilbox" \
|
||||
license="MIT"
|
||||
|
||||
|
||||
###
|
||||
### Envs
|
||||
###
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="5.2"
|
||||
|
||||
|
||||
###
|
||||
### User/Group
|
||||
###
|
||||
RUN set -x \
|
||||
&& groupadd -g ${MY_GID} -r ${MY_GROUP} \
|
||||
&& useradd -u ${MY_UID} -m -s /bin/bash -g ${MY_GROUP} ${MY_USER}
|
||||
|
||||
|
||||
###
|
||||
### Upgrade (install ps)
|
||||
###
|
||||
RUN set -x \
|
||||
&& apt-get update \
|
||||
&& apt-get upgrade -y \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y procps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
|
||||
###
|
||||
### Configure
|
||||
###
|
||||
RUN set -x \
|
||||
&& rm -rf /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /var/lib/php/session \
|
||||
&& mkdir -p /var/lib/php/wsdlcache \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/session \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/wsdlcache
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-5.2.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.2.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
|
||||
|
||||
###
|
||||
### Verify
|
||||
###
|
||||
RUN set -x \
|
||||
&& php -v | grep -oE 'PHP\s[.0-9]+' | grep -oE '[.0-9]+' | grep '^5.2' \
|
||||
&& /usr/local/sbin/php-fpm --test \
|
||||
&& PHP_ERROR="$( php -v 2>&1 1>/dev/null )" \
|
||||
&& if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi
|
||||
|
||||
|
||||
###
|
||||
### Ports
|
||||
###
|
||||
EXPOSE 9000
|
||||
|
||||
|
||||
###
|
||||
### Entrypoint
|
||||
###
|
||||
ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||
86
Dockerfiles/base/Dockerfile-5.3
Normal file
86
Dockerfiles/base/Dockerfile-5.3
Normal file
@@ -0,0 +1,86 @@
|
||||
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-base.j2 instead.
|
||||
FROM devilbox/php-fpm-5.3
|
||||
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
||||
|
||||
|
||||
###
|
||||
### Labels
|
||||
###
|
||||
LABEL \
|
||||
name="cytopia's PHP-FPM 5.3 Image" \
|
||||
image="devilbox/php-fpm" \
|
||||
tag="5.3-base" \
|
||||
vendor="devilbox" \
|
||||
license="MIT"
|
||||
|
||||
|
||||
###
|
||||
### Envs
|
||||
###
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="5.3"
|
||||
|
||||
|
||||
###
|
||||
### User/Group
|
||||
###
|
||||
RUN set -x \
|
||||
&& groupadd -g ${MY_GID} -r ${MY_GROUP} \
|
||||
&& useradd -u ${MY_UID} -m -s /bin/bash -g ${MY_GROUP} ${MY_USER}
|
||||
|
||||
|
||||
###
|
||||
### Upgrade (install ps)
|
||||
###
|
||||
RUN set -x \
|
||||
&& apt-get update \
|
||||
&& apt-get upgrade -y \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y procps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
|
||||
###
|
||||
### Configure
|
||||
###
|
||||
RUN set -x \
|
||||
&& rm -rf /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /var/lib/php/session \
|
||||
&& mkdir -p /var/lib/php/wsdlcache \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/session \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/wsdlcache
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-5.3.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.3.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
|
||||
|
||||
###
|
||||
### Verify
|
||||
###
|
||||
RUN set -x \
|
||||
&& php -v | grep -oE 'PHP\s[.0-9]+' | grep -oE '[.0-9]+' | grep '^5.3' \
|
||||
&& /usr/local/sbin/php-fpm --test \
|
||||
&& PHP_ERROR="$( php -v 2>&1 1>/dev/null )" \
|
||||
&& if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi
|
||||
|
||||
|
||||
###
|
||||
### Ports
|
||||
###
|
||||
EXPOSE 9000
|
||||
|
||||
|
||||
###
|
||||
### Entrypoint
|
||||
###
|
||||
ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||
@@ -20,7 +20,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="5.4"
|
||||
|
||||
|
||||
###
|
||||
@@ -46,16 +47,21 @@ RUN set -x \
|
||||
###
|
||||
RUN set -x \
|
||||
&& rm -rf /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /var/lib/php/session \
|
||||
&& mkdir -p /var/lib/php/wsdlcache \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/session \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/wsdlcache
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-5.4.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.4.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
COPY ./data/php-fpm.conf /usr/local/etc/php-fpm.conf
|
||||
COPY ./data/php-fpm.d /usr/local/etc/php-fpm.d
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -20,7 +20,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="5.5"
|
||||
|
||||
|
||||
###
|
||||
@@ -46,16 +47,21 @@ RUN set -x \
|
||||
###
|
||||
RUN set -x \
|
||||
&& rm -rf /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /var/lib/php/session \
|
||||
&& mkdir -p /var/lib/php/wsdlcache \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/session \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/wsdlcache
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-5.5.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.5.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
COPY ./data/php-fpm.conf /usr/local/etc/php-fpm.conf
|
||||
COPY ./data/php-fpm.d /usr/local/etc/php-fpm.d
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -20,7 +20,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="5.6"
|
||||
|
||||
|
||||
###
|
||||
@@ -46,16 +47,21 @@ RUN set -x \
|
||||
###
|
||||
RUN set -x \
|
||||
&& rm -rf /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /var/lib/php/session \
|
||||
&& mkdir -p /var/lib/php/wsdlcache \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/session \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/wsdlcache
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-5.6.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.6.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
COPY ./data/php-fpm.conf /usr/local/etc/php-fpm.conf
|
||||
COPY ./data/php-fpm.d /usr/local/etc/php-fpm.d
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -20,7 +20,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="7.0"
|
||||
|
||||
|
||||
###
|
||||
@@ -46,16 +47,21 @@ RUN set -x \
|
||||
###
|
||||
RUN set -x \
|
||||
&& rm -rf /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /var/lib/php/session \
|
||||
&& mkdir -p /var/lib/php/wsdlcache \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/session \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/wsdlcache
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-7.0.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-7.0.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
COPY ./data/php-fpm.conf /usr/local/etc/php-fpm.conf
|
||||
COPY ./data/php-fpm.d /usr/local/etc/php-fpm.d
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -20,7 +20,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="7.1"
|
||||
|
||||
|
||||
###
|
||||
@@ -46,16 +47,21 @@ RUN set -x \
|
||||
###
|
||||
RUN set -x \
|
||||
&& rm -rf /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /var/lib/php/session \
|
||||
&& mkdir -p /var/lib/php/wsdlcache \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/session \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/wsdlcache
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-7.1.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-7.1.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
COPY ./data/php-fpm.conf /usr/local/etc/php-fpm.conf
|
||||
COPY ./data/php-fpm.d /usr/local/etc/php-fpm.d
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -20,7 +20,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="7.2"
|
||||
|
||||
|
||||
###
|
||||
@@ -46,16 +47,21 @@ RUN set -x \
|
||||
###
|
||||
RUN set -x \
|
||||
&& rm -rf /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /var/lib/php/session \
|
||||
&& mkdir -p /var/lib/php/wsdlcache \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/session \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/wsdlcache
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-7.2.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-7.2.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
COPY ./data/php-fpm.conf /usr/local/etc/php-fpm.conf
|
||||
COPY ./data/php-fpm.d /usr/local/etc/php-fpm.d
|
||||
|
||||
|
||||
###
|
||||
|
||||
86
Dockerfiles/base/Dockerfile-7.3
Normal file
86
Dockerfiles/base/Dockerfile-7.3
Normal file
@@ -0,0 +1,86 @@
|
||||
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-base.j2 instead.
|
||||
FROM devilbox/php-fpm-7.3
|
||||
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
||||
|
||||
|
||||
###
|
||||
### Labels
|
||||
###
|
||||
LABEL \
|
||||
name="cytopia's PHP-FPM 7.3 Image" \
|
||||
image="devilbox/php-fpm" \
|
||||
tag="7.3-base" \
|
||||
vendor="devilbox" \
|
||||
license="MIT"
|
||||
|
||||
|
||||
###
|
||||
### Envs
|
||||
###
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="7.3"
|
||||
|
||||
|
||||
###
|
||||
### User/Group
|
||||
###
|
||||
RUN set -x \
|
||||
&& groupadd -g ${MY_GID} -r ${MY_GROUP} \
|
||||
&& useradd -u ${MY_UID} -m -s /bin/bash -g ${MY_GROUP} ${MY_USER}
|
||||
|
||||
|
||||
###
|
||||
### Upgrade (install ps)
|
||||
###
|
||||
RUN set -x \
|
||||
&& apt-get update \
|
||||
&& apt-get upgrade -y \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y procps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
|
||||
###
|
||||
### Configure
|
||||
###
|
||||
RUN set -x \
|
||||
&& rm -rf /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /var/lib/php/session \
|
||||
&& mkdir -p /var/lib/php/wsdlcache \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/session \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/wsdlcache
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-7.3.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-7.3.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
|
||||
|
||||
###
|
||||
### Verify
|
||||
###
|
||||
RUN set -x \
|
||||
&& php -v | grep -oE 'PHP\s[.0-9]+' | grep -oE '[.0-9]+' | grep '^7.3' \
|
||||
&& /usr/local/sbin/php-fpm --test \
|
||||
&& PHP_ERROR="$( php -v 2>&1 1>/dev/null )" \
|
||||
&& if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi
|
||||
|
||||
|
||||
###
|
||||
### Ports
|
||||
###
|
||||
EXPOSE 9000
|
||||
|
||||
|
||||
###
|
||||
### Entrypoint
|
||||
###
|
||||
ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||
@@ -62,6 +62,8 @@ set_uid() {
|
||||
log "info" "Changing user '${username}' uid to: ${uid}" "${debug}"
|
||||
run "usermod -u ${uid} ${username}" "${debug}"
|
||||
run "chown -R ${username} ${homedir}" "${debug}"
|
||||
run "chown -R ${username} /var/lib/php/session" "${debug}"
|
||||
run "chown -R ${username} /var/lib/php/wsdlcache" "${debug}"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
@@ -102,6 +104,8 @@ set_gid() {
|
||||
log "info" "Changing group '${groupname}' gid to: ${gid}" "${debug}"
|
||||
run "groupmod -g ${gid} ${groupname}" "${debug}"
|
||||
run "chown -R :${groupname} ${homedir}" "${debug}"
|
||||
run "chown -R :${groupname} /var/lib/php/session" "${debug}"
|
||||
run "chown -R :${groupname} /var/lib/php/wsdlcache" "${debug}"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
[global]
|
||||
daemonize = no
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
160
Dockerfiles/base/data/php-fpm.conf/php-fpm-5.2.conf
Normal file
160
Dockerfiles/base/data/php-fpm.conf/php-fpm-5.2.conf
Normal file
@@ -0,0 +1,160 @@
|
||||
<?xml version="1.0" ?>
|
||||
<configuration>
|
||||
|
||||
All relative paths in this config are relative to php's install prefix
|
||||
|
||||
<section name="global_options">
|
||||
Pid file
|
||||
<value name="pid_file">/var/run/php-fpm.pid</value>
|
||||
|
||||
Error log file
|
||||
<value name="error_log">/proc/self/fd/2</value>
|
||||
|
||||
Log level
|
||||
<value name="log_level">notice</value>
|
||||
|
||||
When this amount of php processes exited with SIGSEGV or SIGBUS ...
|
||||
<value name="emergency_restart_threshold">10</value>
|
||||
|
||||
... in a less than this interval of time, a graceful restart will be initiated.
|
||||
Useful to work around accidental curruptions in accelerator's shared memory.
|
||||
<value name="emergency_restart_interval">1m</value>
|
||||
|
||||
Time limit on waiting child's reaction on signals from master
|
||||
<value name="process_control_timeout">5s</value>
|
||||
|
||||
Set to 'no' to debug fpm
|
||||
<value name="daemonize">no</value>
|
||||
</section>
|
||||
|
||||
<workers>
|
||||
|
||||
<section name="pool">
|
||||
|
||||
Name of pool. Used in logs and stats.
|
||||
<value name="name">www</value>
|
||||
|
||||
Address to accept fastcgi requests on.
|
||||
Valid syntax is 'ip.ad.re.ss:port' or just 'port' or '/path/to/unix/socket'
|
||||
<value name="listen_address">0.0.0.0:9000</value>
|
||||
|
||||
<value name="listen_options">
|
||||
Set listen(2) backlog
|
||||
<value name="backlog">1024</value>
|
||||
Set permissions for unix socket, if one used.
|
||||
In Linux read/write permissions must be set in order to allow connections from web server.
|
||||
Many BSD-derrived systems allow connections regardless of permissions.
|
||||
<value name="owner"></value>
|
||||
<value name="group"></value>
|
||||
<value name="mode">0666</value>
|
||||
</value>
|
||||
|
||||
Additional php.ini defines, specific to this pool of workers.
|
||||
<value name="php_defines">
|
||||
<value name="error_reporting">6135</value>
|
||||
<value name="xmlrpc_errors">0</value>
|
||||
<value name="report_memleaks">1</value>
|
||||
<value name="display_errors">0</value>
|
||||
<value name="display_startup_errors">0</value>
|
||||
<value name="track_errors">1</value>
|
||||
<value name="log_errors">1</value>
|
||||
<value name="html_errors">0</value>
|
||||
</value>
|
||||
|
||||
Unix user of processes
|
||||
<value name="user">devilbox</value>
|
||||
|
||||
Unix group of processes
|
||||
<value name="group">devilbox</value>
|
||||
|
||||
Process manager settings
|
||||
<value name="pm">
|
||||
|
||||
Sets style of controling worker process count.
|
||||
Valid values are 'static' and 'apache-like'
|
||||
<value name="style">apache-like</value>
|
||||
|
||||
Sets the limit on the number of simultaneous requests that will be served.
|
||||
Equivalent to Apache MaxClients directive.
|
||||
Equivalent to PHP_FCGI_CHILDREN environment in original php.fcgi
|
||||
Used with any pm_style.
|
||||
<!--<value name="max_children">50</value>-->
|
||||
<value name="max_children">5</value>
|
||||
|
||||
Settings group for 'apache-like' pm style
|
||||
<value name="apache_like">
|
||||
Sets the number of server processes created on startup.
|
||||
Used only when 'apache-like' pm_style is selected
|
||||
<!--<value name="StartServers">4</value>-->
|
||||
<value name="StartServers">3</value>
|
||||
|
||||
Sets the desired minimum number of idle server processes.
|
||||
Used only when 'apache-like' pm_style is selected
|
||||
<!--<value name="MinSpareServers">2</value>-->
|
||||
<value name="MinSpareServers">2</value>
|
||||
|
||||
Sets the desired maximum number of idle server processes.
|
||||
Used only when 'apache-like' pm_style is selected
|
||||
<!--<value name="MaxSpareServers">6</value>-->
|
||||
<value name="MaxSpareServers">4</value>
|
||||
</value>
|
||||
|
||||
</value>
|
||||
|
||||
The timeout (in seconds) for serving a single request after which the worker process will be terminated
|
||||
Should be used when 'max_execution_time' ini option does not stop script execution for some reason
|
||||
'0s' means 'off'
|
||||
<value name="request_terminate_timeout">120s</value>
|
||||
|
||||
The timeout (in seconds) for serving of single request after which a php backtrace will be dumped to slow.log file
|
||||
'0s' means 'off'
|
||||
<value name="request_slowlog_timeout">0s</value>
|
||||
|
||||
The log file for slow requests
|
||||
<value name="slowlog">/proc/self/fd/2</value>
|
||||
|
||||
Set open file desc rlimit
|
||||
<value name="rlimit_files">1024</value>
|
||||
|
||||
Set max core size rlimit
|
||||
<value name="rlimit_core">0</value>
|
||||
|
||||
Chroot to this directory at the start, absolute path
|
||||
<value name="chroot"></value>
|
||||
|
||||
Chdir to this directory at the start, absolute path
|
||||
<value name="chdir"></value>
|
||||
|
||||
Redirect workers' stdout and stderr into main error log.
|
||||
If not set, they will be redirected to /dev/null, according to FastCGI specs
|
||||
<value name="catch_workers_output">yes</value>
|
||||
|
||||
How much requests each process should execute before respawn.
|
||||
Useful to work around memory leaks in 3rd party libraries.
|
||||
For endless request processing please specify 0
|
||||
Equivalent to PHP_FCGI_MAX_REQUESTS
|
||||
<value name="max_requests">500</value>
|
||||
|
||||
Comma separated list of ipv4 addresses of FastCGI clients that allowed to connect.
|
||||
Equivalent to FCGI_WEB_SERVER_ADDRS environment in original php.fcgi (5.2.2+)
|
||||
Makes sense only with AF_INET listening socket.
|
||||
<!-- <value name="allowed_clients">127.0.0.1</value> -->
|
||||
|
||||
Pass environment variables like LD_LIBRARY_PATH
|
||||
All $VARIABLEs are taken from current environment
|
||||
<value name="environment">
|
||||
<value name="HOSTNAME">$HOSTNAME</value>
|
||||
<value name="PATH">/usr/local/bin:/usr/bin:/bin</value>
|
||||
<value name="TMP">/tmp</value>
|
||||
<value name="TMPDIR">/tmp</value>
|
||||
<value name="TEMP">/tmp</value>
|
||||
<value name="OSTYPE">$OSTYPE</value>
|
||||
<value name="MACHTYPE">$MACHTYPE</value>
|
||||
<value name="MALLOC_CHECK_">2</value>
|
||||
</value>
|
||||
|
||||
</section>
|
||||
|
||||
</workers>
|
||||
|
||||
</configuration>
|
||||
132
Dockerfiles/base/data/php-fpm.conf/php-fpm-5.3.conf
Normal file
132
Dockerfiles/base/data/php-fpm.conf/php-fpm-5.3.conf
Normal file
@@ -0,0 +1,132 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
134
Dockerfiles/base/data/php-fpm.conf/php-fpm-5.4.conf
Normal file
134
Dockerfiles/base/data/php-fpm.conf/php-fpm-5.4.conf
Normal file
@@ -0,0 +1,134 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
134
Dockerfiles/base/data/php-fpm.conf/php-fpm-5.5.conf
Normal file
134
Dockerfiles/base/data/php-fpm.conf/php-fpm-5.5.conf
Normal file
@@ -0,0 +1,134 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
134
Dockerfiles/base/data/php-fpm.conf/php-fpm-5.6.conf
Normal file
134
Dockerfiles/base/data/php-fpm.conf/php-fpm-5.6.conf
Normal file
@@ -0,0 +1,134 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
134
Dockerfiles/base/data/php-fpm.conf/php-fpm-7.0.conf
Normal file
134
Dockerfiles/base/data/php-fpm.conf/php-fpm-7.0.conf
Normal file
@@ -0,0 +1,134 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
134
Dockerfiles/base/data/php-fpm.conf/php-fpm-7.1.conf
Normal file
134
Dockerfiles/base/data/php-fpm.conf/php-fpm-7.1.conf
Normal file
@@ -0,0 +1,134 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
134
Dockerfiles/base/data/php-fpm.conf/php-fpm-7.2.conf
Normal file
134
Dockerfiles/base/data/php-fpm.conf/php-fpm-7.2.conf
Normal file
@@ -0,0 +1,134 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
134
Dockerfiles/base/data/php-fpm.conf/php-fpm-7.3.conf
Normal file
134
Dockerfiles/base/data/php-fpm.conf/php-fpm-7.3.conf
Normal file
@@ -0,0 +1,134 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
@@ -1,10 +0,0 @@
|
||||
[www]
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
@@ -1,3 +0,0 @@
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
@@ -1,6 +0,0 @@
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
@@ -1,2 +0,0 @@
|
||||
[global]
|
||||
log_level = notice
|
||||
@@ -1,21 +0,0 @@
|
||||
[www]
|
||||
|
||||
; User and Group
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Ensure worker stdout and stderr are sent to the main error log.
|
||||
catch_workers_output = yes
|
||||
|
||||
; Pool config
|
||||
pm = dynamic
|
||||
pm.max_children = 5
|
||||
pm.start_servers = 2
|
||||
pm.min_spare_servers = 1
|
||||
pm.max_spare_servers = 3
|
||||
@@ -1,5 +0,0 @@
|
||||
[www]
|
||||
|
||||
; User and Group
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
49
Dockerfiles/base/data/php-ini.d/php-5.2.ini
Normal file
49
Dockerfiles/base/data/php-ini.d/php-5.2.ini
Normal file
@@ -0,0 +1,49 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 5.2-base
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = Off
|
||||
display_startup_errors = Off
|
||||
track_errors = On
|
||||
log_errors = On
|
||||
html_errors = Off
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
49
Dockerfiles/base/data/php-ini.d/php-5.3.ini
Normal file
49
Dockerfiles/base/data/php-ini.d/php-5.3.ini
Normal file
@@ -0,0 +1,49 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 5.3-base
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = Off
|
||||
display_startup_errors = Off
|
||||
track_errors = On
|
||||
log_errors = On
|
||||
html_errors = Off
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
50
Dockerfiles/base/data/php-ini.d/php-5.4.ini
Normal file
50
Dockerfiles/base/data/php-ini.d/php-5.4.ini
Normal file
@@ -0,0 +1,50 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 5.4-base
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_vars = 8000
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = Off
|
||||
display_startup_errors = Off
|
||||
track_errors = On
|
||||
log_errors = On
|
||||
html_errors = Off
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
50
Dockerfiles/base/data/php-ini.d/php-5.5.ini
Normal file
50
Dockerfiles/base/data/php-ini.d/php-5.5.ini
Normal file
@@ -0,0 +1,50 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 5.5-base
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_vars = 8000
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = Off
|
||||
display_startup_errors = Off
|
||||
track_errors = On
|
||||
log_errors = On
|
||||
html_errors = Off
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
50
Dockerfiles/base/data/php-ini.d/php-5.6.ini
Normal file
50
Dockerfiles/base/data/php-ini.d/php-5.6.ini
Normal file
@@ -0,0 +1,50 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 5.6-base
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_vars = 8000
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = Off
|
||||
display_startup_errors = Off
|
||||
track_errors = On
|
||||
log_errors = On
|
||||
html_errors = Off
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
50
Dockerfiles/base/data/php-ini.d/php-7.0.ini
Normal file
50
Dockerfiles/base/data/php-ini.d/php-7.0.ini
Normal file
@@ -0,0 +1,50 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 7.0-base
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_vars = 8000
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = Off
|
||||
display_startup_errors = Off
|
||||
track_errors = On
|
||||
log_errors = On
|
||||
html_errors = Off
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
50
Dockerfiles/base/data/php-ini.d/php-7.1.ini
Normal file
50
Dockerfiles/base/data/php-ini.d/php-7.1.ini
Normal file
@@ -0,0 +1,50 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 7.1-base
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_vars = 8000
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = Off
|
||||
display_startup_errors = Off
|
||||
track_errors = On
|
||||
log_errors = On
|
||||
html_errors = Off
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
49
Dockerfiles/base/data/php-ini.d/php-7.2.ini
Normal file
49
Dockerfiles/base/data/php-ini.d/php-7.2.ini
Normal file
@@ -0,0 +1,49 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 7.2-base
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_vars = 8000
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = Off
|
||||
display_startup_errors = Off
|
||||
log_errors = On
|
||||
html_errors = Off
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
49
Dockerfiles/base/data/php-ini.d/php-7.3.ini
Normal file
49
Dockerfiles/base/data/php-ini.d/php-7.3.ini
Normal file
@@ -0,0 +1,49 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 7.3-base
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_vars = 8000
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = Off
|
||||
display_startup_errors = Off
|
||||
log_errors = On
|
||||
html_errors = Off
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
388
Dockerfiles/mods/Dockerfile-5.2
Normal file
388
Dockerfiles/mods/Dockerfile-5.2
Normal file
@@ -0,0 +1,388 @@
|
||||
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-mods.j2 instead.
|
||||
FROM devilbox/php-fpm:5.2-base
|
||||
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
||||
|
||||
|
||||
###
|
||||
### Labels
|
||||
###
|
||||
LABEL \
|
||||
name="cytopia's PHP-FPM 5.2 Image" \
|
||||
image="devilbox/php-fpm" \
|
||||
tag="5.2-mods" \
|
||||
vendor="devilbox" \
|
||||
license="MIT"
|
||||
|
||||
|
||||
###
|
||||
### Envs
|
||||
###
|
||||
ENV BUILD_DEPS \
|
||||
librabbitmq-dev \
|
||||
libbz2-dev \
|
||||
libcurl4-openssl-dev \
|
||||
libxml2-dev \
|
||||
libenchant-dev \
|
||||
libmagic-dev \
|
||||
libssl-dev \
|
||||
libpng-dev \
|
||||
libjpeg-dev \
|
||||
libxpm-dev \
|
||||
libvpx-dev \
|
||||
zlib1g-dev \
|
||||
libfreetype6-dev \
|
||||
libc-client-dev \
|
||||
libkrb5-dev \
|
||||
libcurl4-openssl-dev \
|
||||
libfbclient2 \
|
||||
libib-util \
|
||||
firebird-dev \
|
||||
libicu-dev \
|
||||
libldap2-dev \
|
||||
libsasl2-dev \
|
||||
libmcrypt-dev \
|
||||
zlib1g-dev \
|
||||
zlib1g-dev \
|
||||
libmemcached-dev \
|
||||
libssl-dev \
|
||||
libsasl2-dev \
|
||||
freetds-dev \
|
||||
libfbclient2 \
|
||||
libib-util \
|
||||
firebird-dev \
|
||||
zlib1g-dev \
|
||||
libpq-dev \
|
||||
libsqlite3-dev \
|
||||
libpq-dev \
|
||||
libssl-dev \
|
||||
libpspell-dev \
|
||||
librecode-dev \
|
||||
libmm-dev \
|
||||
libxml2-dev \
|
||||
libssl-dev \
|
||||
libsnmp-dev \
|
||||
snmp \
|
||||
libxml2-dev \
|
||||
libtidy-dev \
|
||||
libxml2-dev \
|
||||
libxml2-dev \
|
||||
libxml2-dev \
|
||||
libxml2-dev \
|
||||
libxml2-dev \
|
||||
libxslt-dev \
|
||||
zlib1g-dev \
|
||||
ca-certificates \
|
||||
git
|
||||
|
||||
ENV RUN_DEPS \
|
||||
librabbitmq1 \
|
||||
libenchant1c2a \
|
||||
libpng12-0 \
|
||||
libjpeg62-turbo \
|
||||
libxpm4 \
|
||||
libvpx1 \
|
||||
libfreetype6 \
|
||||
libc-client2007e \
|
||||
libfbclient2 \
|
||||
libicu52 \
|
||||
libmcrypt4 \
|
||||
libmemcachedutil2 \
|
||||
libmysqlclient18 \
|
||||
libsybdb5 \
|
||||
libfbclient2 \
|
||||
libpq5 \
|
||||
libpq5 \
|
||||
libaspell15 \
|
||||
librecode0 \
|
||||
snmp \
|
||||
libtidy-0.99-0 \
|
||||
libxslt1.1 \
|
||||
ca-certificates
|
||||
|
||||
|
||||
###
|
||||
### Install
|
||||
###
|
||||
RUN set -x \
|
||||
&& apt-get update \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& EXTENSION_DIR="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )" \
|
||||
&& if [ ! -d "${EXTENSION_DIR}" ]; then mkdir -p "${EXTENSION_DIR}"; fi \
|
||||
&& curl https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -L -o ioncube.tar.gz \
|
||||
&& tar xvfz ioncube.tar.gz \
|
||||
&& cd ioncube \
|
||||
&& cp "ioncube_loader_lin_5.2.so" "${EXTENSION_DIR}/ioncube.so" \
|
||||
&& cd ../ \
|
||||
&& rm -rf ioncube \
|
||||
&& rm -rf ioncube.tar.gz \
|
||||
\
|
||||
&& pecl install amqp-1.4.0 \
|
||||
&& docker-php-ext-enable amqp \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) bcmath \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) bz2 \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) calendar \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) ctype \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) curl \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) dba \
|
||||
&& /usr/local/bin/docker-php-ext-configure dom --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) dom \
|
||||
&& echo "/usr" | pecl install enchant \
|
||||
&& docker-php-ext-enable enchant \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) exif \
|
||||
&& pecl install fileinfo \
|
||||
&& docker-php-ext-enable fileinfo \
|
||||
&& /usr/local/bin/docker-php-ext-configure ftp --with-openssl-dir \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) ftp \
|
||||
&& ln -s /usr/lib/x86_64-linux-gnu/libjpeg.* /usr/lib/ && \
|
||||
ln -s /usr/lib/x86_64-linux-gnu/libpng.* /usr/lib/ && \
|
||||
ln -s /usr/lib/x86_64-linux-gnu/libXpm.* /usr/lib/ && \
|
||||
mkdir /usr/include/freetype2/freetype && \
|
||||
ln -s /usr/include/freetype2/freetype.h /usr/include/freetype2/freetype/freetype.h \
|
||||
\
|
||||
&& /usr/local/bin/docker-php-ext-configure gd --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-zlib-dir=/usr --with-xpm-dir=/usr --with-freetype-dir=/usr --enable-gd-jis-conv --enable-gd-native-ttf \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) gd \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) gettext \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) hash \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) iconv \
|
||||
&& pecl install igbinary \
|
||||
&& docker-php-ext-enable igbinary \
|
||||
&& ln -s /usr/lib/x86_64-linux-gnu/libkrb5* /usr/lib/ \
|
||||
&& /usr/local/bin/docker-php-ext-configure imap --with-kerberos --with-imap-ssl --with-imap \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) imap \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) interbase \
|
||||
&& pecl install intl \
|
||||
&& docker-php-ext-enable intl \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) json \
|
||||
&& ln -s /usr/lib/x86_64-linux-gnu/libldap* /usr/lib/ \
|
||||
&& /usr/local/bin/docker-php-ext-configure ldap --with-ldap --with-ldap-sasl \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) ldap \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) mbstring \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) mcrypt \
|
||||
&& pecl install memcache \
|
||||
&& docker-php-ext-enable memcache \
|
||||
&& pecl install memcached-2.1.0 \
|
||||
&& docker-php-ext-enable memcached \
|
||||
&& yes | pecl install mongo-1.5.8 \
|
||||
&& docker-php-ext-enable mongo \
|
||||
&& pecl install msgpack-0.5.7 \
|
||||
&& docker-php-ext-enable msgpack \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) mysql \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) mysqli \
|
||||
&& pecl install zendopcache \
|
||||
&& docker-php-ext-enable opcache \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pcntl \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo \
|
||||
&& ln -s /usr/lib/x86_64-linux-gnu/libsybdb.* /usr/lib/ \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_dblib \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_firebird \
|
||||
&& /usr/local/bin/docker-php-ext-configure pdo_mysql --with-zlib-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_mysql \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_pgsql \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_sqlite \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pgsql \
|
||||
&& pecl install phar \
|
||||
&& docker-php-ext-enable phar \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) posix \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pspell \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) recode \
|
||||
&& pecl install redis-2.2.7 \
|
||||
&& docker-php-ext-enable redis \
|
||||
&& /usr/local/bin/docker-php-ext-configure session --with-mm \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) session \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) shmop \
|
||||
&& /usr/local/bin/docker-php-ext-configure simplexml --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) simplexml \
|
||||
&& /usr/local/bin/docker-php-ext-configure snmp --with-openssl-dir \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) snmp \
|
||||
&& /usr/local/bin/docker-php-ext-configure soap --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) soap \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sockets \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvmsg \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvsem \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvshm \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) tidy \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) tokenizer \
|
||||
&& pecl install uploadprogress \
|
||||
&& docker-php-ext-enable uploadprogress \
|
||||
&& /usr/local/bin/docker-php-ext-configure wddx --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) wddx \
|
||||
&& pecl install xdebug-2.2.7 \
|
||||
&& docker-php-ext-enable xdebug \
|
||||
&& /usr/local/bin/docker-php-ext-configure xml --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xml \
|
||||
&& /usr/local/bin/docker-php-ext-configure xmlreader --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xmlreader \
|
||||
&& /usr/local/bin/docker-php-ext-configure xmlrpc --with-libxml-dir=/usr --with-iconv-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xmlrpc \
|
||||
&& /usr/local/bin/docker-php-ext-configure xmlwriter --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xmlwriter \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xsl \
|
||||
&& /usr/local/bin/docker-php-ext-configure zip --with-zlib-dir=/usr --with-pcre-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) zip \
|
||||
\
|
||||
\
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
${RUN_DEPS} \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& update-ca-certificates \
|
||||
&& sh -c "find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true"
|
||||
|
||||
|
||||
###
|
||||
### Verify
|
||||
###
|
||||
RUN set -x \
|
||||
&& php -v | grep -oE 'PHP\s[.0-9]+' | grep -oE '[.0-9]+' | grep '^5.2' \
|
||||
&& /usr/local/sbin/php-fpm --test \
|
||||
&& PHP_ERROR="$( php -v 2>&1 1>/dev/null )" \
|
||||
&& if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi
|
||||
|
||||
RUN set -x \
|
||||
&& php -m | grep -oiE '^amqp$' \
|
||||
&& php-fpm -m | grep -oiE '^amqp$' \
|
||||
&& php -m | grep -oiE '^bcmath$' \
|
||||
&& php-fpm -m | grep -oiE '^bcmath$' \
|
||||
&& php -m | grep -oiE '^bz2$' \
|
||||
&& php-fpm -m | grep -oiE '^bz2$' \
|
||||
&& php -m | grep -oiE '^calendar$' \
|
||||
&& php-fpm -m | grep -oiE '^calendar$' \
|
||||
&& php -m | grep -oiE '^ctype$' \
|
||||
&& php-fpm -m | grep -oiE '^ctype$' \
|
||||
&& php -m | grep -oiE '^curl$' \
|
||||
&& php-fpm -m | grep -oiE '^curl$' \
|
||||
&& php -m | grep -oiE '^dba$' \
|
||||
&& php-fpm -m | grep -oiE '^dba$' \
|
||||
&& php -m | grep -oiE '^dom$' \
|
||||
&& php-fpm -m | grep -oiE '^dom$' \
|
||||
&& php -m | grep -oiE '^enchant$' \
|
||||
&& php-fpm -m | grep -oiE '^enchant$' \
|
||||
&& php -m | grep -oiE '^exif$' \
|
||||
&& php-fpm -m | grep -oiE '^exif$' \
|
||||
&& php -m | grep -oiE '^fileinfo$' \
|
||||
&& php-fpm -m | grep -oiE '^fileinfo$' \
|
||||
&& php -m | grep -oiE '^ftp$' \
|
||||
&& php-fpm -m | grep -oiE '^ftp$' \
|
||||
&& php -m | grep -oiE '^gd$' \
|
||||
&& php-fpm -m | grep -oiE '^gd$' \
|
||||
&& php -m | grep -oiE '^gettext$' \
|
||||
&& php-fpm -m | grep -oiE '^gettext$' \
|
||||
&& php -m | grep -oiE '^hash$' \
|
||||
&& php-fpm -m | grep -oiE '^hash$' \
|
||||
&& php -m | grep -oiE '^iconv$' \
|
||||
&& php-fpm -m | grep -oiE '^iconv$' \
|
||||
&& php -m | grep -oiE '^igbinary$' \
|
||||
&& php-fpm -m | grep -oiE '^igbinary$' \
|
||||
&& php -m | grep -oiE '^imap$' \
|
||||
&& php-fpm -m | grep -oiE '^imap$' \
|
||||
&& php -m | grep -oiE '^interbase$' \
|
||||
&& php-fpm -m | grep -oiE '^interbase$' \
|
||||
&& php -m | grep -oiE '^intl$' \
|
||||
&& php-fpm -m | grep -oiE '^intl$' \
|
||||
&& php -m | grep -oiE '^json$' \
|
||||
&& php-fpm -m | grep -oiE '^json$' \
|
||||
&& php -m | grep -oiE '^ldap$' \
|
||||
&& php-fpm -m | grep -oiE '^ldap$' \
|
||||
&& php -m | grep -oiE '^mbstring$' \
|
||||
&& php-fpm -m | grep -oiE '^mbstring$' \
|
||||
&& php -m | grep -oiE '^mcrypt$' \
|
||||
&& php-fpm -m | grep -oiE '^mcrypt$' \
|
||||
&& php -m | grep -oiE '^memcache$' \
|
||||
&& php-fpm -m | grep -oiE '^memcache$' \
|
||||
&& php -m | grep -oiE '^memcached$' \
|
||||
&& php-fpm -m | grep -oiE '^memcached$' \
|
||||
&& php -m | grep -oiE '^mongo$' \
|
||||
&& php-fpm -m | grep -oiE '^mongo$' \
|
||||
&& php -m | grep -oiE '^msgpack$' \
|
||||
&& php-fpm -m | grep -oiE '^msgpack$' \
|
||||
&& php -m | grep -oiE '^mysql$' \
|
||||
&& php-fpm -m | grep -oiE '^mysql$' \
|
||||
&& php -m | grep -oiE '^mysqli$' \
|
||||
&& php-fpm -m | grep -oiE '^mysqli$' \
|
||||
&& php -m | grep -oiE '^Zend Opcache$' \
|
||||
&& php-fpm -m | grep -oiE '^Zend Opcache$' \
|
||||
&& php -m | grep -oiE '^pcntl$' \
|
||||
&& php-fpm -m | grep -oiE '^pcntl$' \
|
||||
&& php -m | grep -oiE '^pdo$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo$' \
|
||||
&& php -m | grep -oiE '^pdo_dblib$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_dblib$' \
|
||||
&& php -m | grep -oiE '^pdo_firebird$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_firebird$' \
|
||||
&& php -m | grep -oiE '^pdo_mysql$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_mysql$' \
|
||||
&& php -m | grep -oiE '^pdo_pgsql$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_pgsql$' \
|
||||
&& php -m | grep -oiE '^pdo_sqlite$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_sqlite$' \
|
||||
&& php -m | grep -oiE '^pgsql$' \
|
||||
&& php-fpm -m | grep -oiE '^pgsql$' \
|
||||
&& php -m | grep -oiE '^phar$' \
|
||||
&& php-fpm -m | grep -oiE '^phar$' \
|
||||
&& php -m | grep -oiE '^posix$' \
|
||||
&& php-fpm -m | grep -oiE '^posix$' \
|
||||
&& php -m | grep -oiE '^pspell$' \
|
||||
&& php-fpm -m | grep -oiE '^pspell$' \
|
||||
&& php -m | grep -oiE '^recode$' \
|
||||
&& php-fpm -m | grep -oiE '^recode$' \
|
||||
&& php -m | grep -oiE '^redis$' \
|
||||
&& php-fpm -m | grep -oiE '^redis$' \
|
||||
&& php -m | grep -oiE '^session$' \
|
||||
&& php-fpm -m | grep -oiE '^session$' \
|
||||
&& php -m | grep -oiE '^shmop$' \
|
||||
&& php-fpm -m | grep -oiE '^shmop$' \
|
||||
&& php -m | grep -oiE '^simplexml$' \
|
||||
&& php-fpm -m | grep -oiE '^simplexml$' \
|
||||
&& php -m | grep -oiE '^snmp$' \
|
||||
&& php-fpm -m | grep -oiE '^snmp$' \
|
||||
&& php -m | grep -oiE '^soap$' \
|
||||
&& php-fpm -m | grep -oiE '^soap$' \
|
||||
&& php -m | grep -oiE '^sockets$' \
|
||||
&& php-fpm -m | grep -oiE '^sockets$' \
|
||||
&& php -m | grep -oiE '^sysvmsg$' \
|
||||
&& php-fpm -m | grep -oiE '^sysvmsg$' \
|
||||
&& php -m | grep -oiE '^sysvsem$' \
|
||||
&& php-fpm -m | grep -oiE '^sysvsem$' \
|
||||
&& php -m | grep -oiE '^sysvshm$' \
|
||||
&& php-fpm -m | grep -oiE '^sysvshm$' \
|
||||
&& php -m | grep -oiE '^tidy$' \
|
||||
&& php-fpm -m | grep -oiE '^tidy$' \
|
||||
&& php -m | grep -oiE '^tokenizer$' \
|
||||
&& php-fpm -m | grep -oiE '^tokenizer$' \
|
||||
&& php -m | grep -oiE '^uploadprogress$' \
|
||||
&& php-fpm -m | grep -oiE '^uploadprogress$' \
|
||||
&& php -m | grep -oiE '^wddx$' \
|
||||
&& php-fpm -m | grep -oiE '^wddx$' \
|
||||
&& php -m | grep -oiE '^xdebug$' \
|
||||
&& php-fpm -m | grep -oiE '^xdebug$' \
|
||||
&& php -m | grep -oiE '^xml$' \
|
||||
&& php-fpm -m | grep -oiE '^xml$' \
|
||||
&& php -m | grep -oiE '^xmlreader$' \
|
||||
&& php-fpm -m | grep -oiE '^xmlreader$' \
|
||||
&& php -m | grep -oiE '^xmlrpc$' \
|
||||
&& php-fpm -m | grep -oiE '^xmlrpc$' \
|
||||
&& php -m | grep -oiE '^xmlwriter$' \
|
||||
&& php-fpm -m | grep -oiE '^xmlwriter$' \
|
||||
&& php -m | grep -oiE '^xsl$' \
|
||||
&& php-fpm -m | grep -oiE '^xsl$' \
|
||||
&& php -m | grep -oiE '^zip$' \
|
||||
&& php-fpm -m | grep -oiE '^zip$' \
|
||||
&& true
|
||||
|
||||
|
||||
###
|
||||
### Ports
|
||||
###
|
||||
EXPOSE 9000
|
||||
|
||||
|
||||
###
|
||||
### Entrypoint
|
||||
###
|
||||
ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||
414
Dockerfiles/mods/Dockerfile-5.3
Normal file
414
Dockerfiles/mods/Dockerfile-5.3
Normal file
@@ -0,0 +1,414 @@
|
||||
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-mods.j2 instead.
|
||||
FROM devilbox/php-fpm:5.3-base
|
||||
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
||||
|
||||
|
||||
###
|
||||
### Labels
|
||||
###
|
||||
LABEL \
|
||||
name="cytopia's PHP-FPM 5.3 Image" \
|
||||
image="devilbox/php-fpm" \
|
||||
tag="5.3-mods" \
|
||||
vendor="devilbox" \
|
||||
license="MIT"
|
||||
|
||||
|
||||
###
|
||||
### Envs
|
||||
###
|
||||
ENV BUILD_DEPS \
|
||||
librabbitmq-dev \
|
||||
libbz2-dev \
|
||||
libcurl4-openssl-dev \
|
||||
libxml2-dev \
|
||||
libenchant-dev \
|
||||
libssl-dev \
|
||||
libpng-dev \
|
||||
libjpeg-dev \
|
||||
libxpm-dev \
|
||||
libvpx-dev \
|
||||
zlib1g-dev \
|
||||
libfreetype6-dev \
|
||||
libgmp-dev \
|
||||
libmagickwand-dev \
|
||||
libc-client-dev \
|
||||
libkrb5-dev \
|
||||
libcurl4-openssl-dev \
|
||||
libfbclient2 \
|
||||
libib-util \
|
||||
firebird-dev \
|
||||
libicu-dev \
|
||||
libldap2-dev \
|
||||
libsasl2-dev \
|
||||
libmcrypt-dev \
|
||||
zlib1g-dev \
|
||||
zlib1g-dev \
|
||||
libmemcached-dev \
|
||||
libssl-dev \
|
||||
libsasl2-dev \
|
||||
libssl-dev \
|
||||
libsasl2-dev \
|
||||
freetds-dev \
|
||||
libfbclient2 \
|
||||
libib-util \
|
||||
firebird-dev \
|
||||
zlib1g-dev \
|
||||
libpq-dev \
|
||||
libsqlite3-dev \
|
||||
libpq-dev \
|
||||
libssl-dev \
|
||||
libpspell-dev \
|
||||
librecode-dev \
|
||||
libmm-dev \
|
||||
libxml2-dev \
|
||||
libssl-dev \
|
||||
libsnmp-dev \
|
||||
snmp \
|
||||
libxml2-dev \
|
||||
libnghttp2-dev \
|
||||
libssl-dev \
|
||||
libtidy-dev \
|
||||
libxml2-dev \
|
||||
libxml2-dev \
|
||||
libxml2-dev \
|
||||
libxml2-dev \
|
||||
libxml2-dev \
|
||||
libxslt-dev \
|
||||
zlib1g-dev \
|
||||
ca-certificates \
|
||||
git
|
||||
|
||||
ENV RUN_DEPS \
|
||||
librabbitmq1 \
|
||||
libenchant1c2a \
|
||||
libpng12-0 \
|
||||
libjpeg62-turbo \
|
||||
libxpm4 \
|
||||
libvpx1 \
|
||||
libfreetype6 \
|
||||
libmagickwand-6.q16-2 \
|
||||
libc-client2007e \
|
||||
libfbclient2 \
|
||||
libicu52 \
|
||||
libmcrypt4 \
|
||||
libmemcachedutil2 \
|
||||
libmysqlclient18 \
|
||||
libsybdb5 \
|
||||
libfbclient2 \
|
||||
libpq5 \
|
||||
libpq5 \
|
||||
libaspell15 \
|
||||
librecode0 \
|
||||
snmp \
|
||||
libnghttp2-5 \
|
||||
libtidy-0.99-0 \
|
||||
libxslt1.1 \
|
||||
ca-certificates
|
||||
|
||||
|
||||
###
|
||||
### Install
|
||||
###
|
||||
RUN set -x \
|
||||
&& apt-get update \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& EXTENSION_DIR="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )" \
|
||||
&& if [ ! -d "${EXTENSION_DIR}" ]; then mkdir -p "${EXTENSION_DIR}"; fi \
|
||||
&& curl https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -L -o ioncube.tar.gz \
|
||||
&& tar xvfz ioncube.tar.gz \
|
||||
&& cd ioncube \
|
||||
&& cp "ioncube_loader_lin_5.3.so" "${EXTENSION_DIR}/ioncube.so" \
|
||||
&& cd ../ \
|
||||
&& rm -rf ioncube \
|
||||
&& rm -rf ioncube.tar.gz \
|
||||
\
|
||||
&& echo "/usr" | pecl install amqp \
|
||||
&& docker-php-ext-enable amqp \
|
||||
&& pecl install apcu-4.0.11 \
|
||||
&& docker-php-ext-enable apcu \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) bcmath \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) bz2 \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) calendar \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) ctype \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) curl \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) dba \
|
||||
&& /usr/local/bin/docker-php-ext-configure dom --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) dom \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) enchant \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) exif \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) fileinfo \
|
||||
&& /usr/local/bin/docker-php-ext-configure ftp --with-openssl-dir \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) ftp \
|
||||
&& ln -s /usr/lib/x86_64-linux-gnu/libXpm.* /usr/lib/ && mkdir /usr/include/freetype2/freetype && ln -s /usr/include/freetype2/freetype.h /usr/include/freetype2/freetype/freetype.h \
|
||||
&& /usr/local/bin/docker-php-ext-configure gd --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-zlib-dir=/usr --with-xpm-dir=/usr --with-freetype-dir=/usr --enable-gd-jis-conv --enable-gd-native-ttf \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) gd \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) gettext \
|
||||
&& ln /usr/include/x86_64-linux-gnu/gmp.h /usr/include/ \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) gmp \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) hash \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) iconv \
|
||||
&& pecl install igbinary \
|
||||
&& docker-php-ext-enable igbinary \
|
||||
&& pecl install imagick-3.3.0 \
|
||||
&& docker-php-ext-enable imagick \
|
||||
&& ln -s /usr/lib/x86_64-linux-gnu/libkrb5* /usr/lib/ \
|
||||
&& /usr/local/bin/docker-php-ext-configure imap --with-kerberos --with-imap-ssl --with-imap \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) imap \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) interbase \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) intl \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) json \
|
||||
&& ln -s /usr/lib/x86_64-linux-gnu/libldap* /usr/lib/ \
|
||||
&& /usr/local/bin/docker-php-ext-configure ldap --with-ldap --with-ldap-sasl \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) ldap \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) mbstring \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) mcrypt \
|
||||
&& pecl install memcache \
|
||||
&& docker-php-ext-enable memcache \
|
||||
&& pecl install memcached-2.2.0 \
|
||||
&& docker-php-ext-enable memcached \
|
||||
&& yes | pecl install mongo \
|
||||
&& docker-php-ext-enable mongo \
|
||||
&& pecl install mongodb-0.6.3 \
|
||||
&& docker-php-ext-enable mongodb \
|
||||
&& pecl install msgpack-0.5.7 \
|
||||
&& docker-php-ext-enable msgpack \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) mysql \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) mysqli \
|
||||
&& pecl install zendopcache \
|
||||
&& docker-php-ext-enable opcache \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pcntl \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo \
|
||||
&& ln -s /usr/lib/x86_64-linux-gnu/libsybdb.* /usr/lib/ \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_dblib \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_firebird \
|
||||
&& /usr/local/bin/docker-php-ext-configure pdo_mysql --with-zlib-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_mysql \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_pgsql \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_sqlite \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pgsql \
|
||||
&& git clone -v https://github.com/phalcon/cphalcon /tmp/phalcon \
|
||||
&& cd /tmp/phalcon \
|
||||
&& git checkout phalcon-v2.0.9 \
|
||||
&& cd build && ./install \
|
||||
&& docker-php-ext-enable phalcon \
|
||||
&& cd / && rm -rf /tmp/phalcon \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) phar \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) posix \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pspell \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) recode \
|
||||
&& pecl install redis \
|
||||
&& docker-php-ext-enable redis \
|
||||
&& /usr/local/bin/docker-php-ext-configure session --with-mm \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) session \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) shmop \
|
||||
&& /usr/local/bin/docker-php-ext-configure simplexml --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) simplexml \
|
||||
&& /usr/local/bin/docker-php-ext-configure snmp --with-openssl-dir \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) snmp \
|
||||
&& /usr/local/bin/docker-php-ext-configure soap --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) soap \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sockets \
|
||||
&& pecl install swoole-1.9.23 \
|
||||
&& docker-php-ext-enable swoole \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvmsg \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvsem \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvshm \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) tidy \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) tokenizer \
|
||||
&& pecl install uploadprogress \
|
||||
&& docker-php-ext-enable uploadprogress \
|
||||
&& /usr/local/bin/docker-php-ext-configure wddx --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) wddx \
|
||||
&& pecl install xdebug-2.2.7 \
|
||||
&& docker-php-ext-enable xdebug \
|
||||
&& /usr/local/bin/docker-php-ext-configure xml --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xml \
|
||||
&& /usr/local/bin/docker-php-ext-configure xmlreader --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xmlreader \
|
||||
&& /usr/local/bin/docker-php-ext-configure xmlrpc --with-libxml-dir=/usr --with-iconv-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xmlrpc \
|
||||
&& /usr/local/bin/docker-php-ext-configure xmlwriter --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xmlwriter \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xsl \
|
||||
&& /usr/local/bin/docker-php-ext-configure zip --with-zlib-dir=/usr --with-pcre-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) zip \
|
||||
\
|
||||
\
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
${RUN_DEPS} \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& update-ca-certificates \
|
||||
&& sh -c "find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true"
|
||||
|
||||
|
||||
###
|
||||
### Verify
|
||||
###
|
||||
RUN set -x \
|
||||
&& php -v | grep -oE 'PHP\s[.0-9]+' | grep -oE '[.0-9]+' | grep '^5.3' \
|
||||
&& /usr/local/sbin/php-fpm --test \
|
||||
&& PHP_ERROR="$( php -v 2>&1 1>/dev/null )" \
|
||||
&& if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi
|
||||
|
||||
RUN set -x \
|
||||
&& php -m | grep -oiE '^amqp$' \
|
||||
&& php-fpm -m | grep -oiE '^amqp$' \
|
||||
&& php -m | grep -oiE '^apcu$' \
|
||||
&& php-fpm -m | grep -oiE '^apcu$' \
|
||||
&& php -m | grep -oiE '^bcmath$' \
|
||||
&& php-fpm -m | grep -oiE '^bcmath$' \
|
||||
&& php -m | grep -oiE '^bz2$' \
|
||||
&& php-fpm -m | grep -oiE '^bz2$' \
|
||||
&& php -m | grep -oiE '^calendar$' \
|
||||
&& php-fpm -m | grep -oiE '^calendar$' \
|
||||
&& php -m | grep -oiE '^ctype$' \
|
||||
&& php-fpm -m | grep -oiE '^ctype$' \
|
||||
&& php -m | grep -oiE '^curl$' \
|
||||
&& php-fpm -m | grep -oiE '^curl$' \
|
||||
&& php -m | grep -oiE '^dba$' \
|
||||
&& php-fpm -m | grep -oiE '^dba$' \
|
||||
&& php -m | grep -oiE '^dom$' \
|
||||
&& php-fpm -m | grep -oiE '^dom$' \
|
||||
&& php -m | grep -oiE '^enchant$' \
|
||||
&& php-fpm -m | grep -oiE '^enchant$' \
|
||||
&& php -m | grep -oiE '^exif$' \
|
||||
&& php-fpm -m | grep -oiE '^exif$' \
|
||||
&& php -m | grep -oiE '^fileinfo$' \
|
||||
&& php-fpm -m | grep -oiE '^fileinfo$' \
|
||||
&& php -m | grep -oiE '^ftp$' \
|
||||
&& php-fpm -m | grep -oiE '^ftp$' \
|
||||
&& php -m | grep -oiE '^gd$' \
|
||||
&& php-fpm -m | grep -oiE '^gd$' \
|
||||
&& php -m | grep -oiE '^gettext$' \
|
||||
&& php-fpm -m | grep -oiE '^gettext$' \
|
||||
&& php -m | grep -oiE '^gmp$' \
|
||||
&& php-fpm -m | grep -oiE '^gmp$' \
|
||||
&& php -m | grep -oiE '^hash$' \
|
||||
&& php-fpm -m | grep -oiE '^hash$' \
|
||||
&& php -m | grep -oiE '^iconv$' \
|
||||
&& php-fpm -m | grep -oiE '^iconv$' \
|
||||
&& php -m | grep -oiE '^igbinary$' \
|
||||
&& php-fpm -m | grep -oiE '^igbinary$' \
|
||||
&& php -m | grep -oiE '^imagick$' \
|
||||
&& php-fpm -m | grep -oiE '^imagick$' \
|
||||
&& php -m | grep -oiE '^imap$' \
|
||||
&& php-fpm -m | grep -oiE '^imap$' \
|
||||
&& php -m | grep -oiE '^interbase$' \
|
||||
&& php-fpm -m | grep -oiE '^interbase$' \
|
||||
&& php -m | grep -oiE '^intl$' \
|
||||
&& php-fpm -m | grep -oiE '^intl$' \
|
||||
&& php -m | grep -oiE '^json$' \
|
||||
&& php-fpm -m | grep -oiE '^json$' \
|
||||
&& php -m | grep -oiE '^ldap$' \
|
||||
&& php-fpm -m | grep -oiE '^ldap$' \
|
||||
&& php -m | grep -oiE '^mbstring$' \
|
||||
&& php-fpm -m | grep -oiE '^mbstring$' \
|
||||
&& php -m | grep -oiE '^mcrypt$' \
|
||||
&& php-fpm -m | grep -oiE '^mcrypt$' \
|
||||
&& php -m | grep -oiE '^memcache$' \
|
||||
&& php-fpm -m | grep -oiE '^memcache$' \
|
||||
&& php -m | grep -oiE '^memcached$' \
|
||||
&& php-fpm -m | grep -oiE '^memcached$' \
|
||||
&& php -m | grep -oiE '^mongo$' \
|
||||
&& php-fpm -m | grep -oiE '^mongo$' \
|
||||
&& php -m | grep -oiE '^mongodb$' \
|
||||
&& php-fpm -m | grep -oiE '^mongodb$' \
|
||||
&& php -m | grep -oiE '^msgpack$' \
|
||||
&& php-fpm -m | grep -oiE '^msgpack$' \
|
||||
&& php -m | grep -oiE '^mysql$' \
|
||||
&& php-fpm -m | grep -oiE '^mysql$' \
|
||||
&& php -m | grep -oiE '^mysqli$' \
|
||||
&& php-fpm -m | grep -oiE '^mysqli$' \
|
||||
&& php -m | grep -oiE '^Zend Opcache$' \
|
||||
&& php-fpm -m | grep -oiE '^Zend Opcache$' \
|
||||
&& php -m | grep -oiE '^pcntl$' \
|
||||
&& php-fpm -m | grep -oiE '^pcntl$' \
|
||||
&& php -m | grep -oiE '^pdo$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo$' \
|
||||
&& php -m | grep -oiE '^pdo_dblib$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_dblib$' \
|
||||
&& php -m | grep -oiE '^pdo_firebird$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_firebird$' \
|
||||
&& php -m | grep -oiE '^pdo_mysql$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_mysql$' \
|
||||
&& php -m | grep -oiE '^pdo_pgsql$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_pgsql$' \
|
||||
&& php -m | grep -oiE '^pdo_sqlite$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_sqlite$' \
|
||||
&& php -m | grep -oiE '^pgsql$' \
|
||||
&& php-fpm -m | grep -oiE '^pgsql$' \
|
||||
&& php -m | grep -oiE '^phalcon$' \
|
||||
&& php-fpm -m | grep -oiE '^phalcon$' \
|
||||
&& php -m | grep -oiE '^phar$' \
|
||||
&& php-fpm -m | grep -oiE '^phar$' \
|
||||
&& php -m | grep -oiE '^posix$' \
|
||||
&& php-fpm -m | grep -oiE '^posix$' \
|
||||
&& php -m | grep -oiE '^pspell$' \
|
||||
&& php-fpm -m | grep -oiE '^pspell$' \
|
||||
&& php -m | grep -oiE '^recode$' \
|
||||
&& php-fpm -m | grep -oiE '^recode$' \
|
||||
&& php -m | grep -oiE '^redis$' \
|
||||
&& php-fpm -m | grep -oiE '^redis$' \
|
||||
&& php -m | grep -oiE '^session$' \
|
||||
&& php-fpm -m | grep -oiE '^session$' \
|
||||
&& php -m | grep -oiE '^shmop$' \
|
||||
&& php-fpm -m | grep -oiE '^shmop$' \
|
||||
&& php -m | grep -oiE '^simplexml$' \
|
||||
&& php-fpm -m | grep -oiE '^simplexml$' \
|
||||
&& php -m | grep -oiE '^snmp$' \
|
||||
&& php-fpm -m | grep -oiE '^snmp$' \
|
||||
&& php -m | grep -oiE '^soap$' \
|
||||
&& php-fpm -m | grep -oiE '^soap$' \
|
||||
&& php -m | grep -oiE '^sockets$' \
|
||||
&& php-fpm -m | grep -oiE '^sockets$' \
|
||||
&& php -m | grep -oiE '^swoole$' \
|
||||
&& php-fpm -m | grep -oiE '^swoole$' \
|
||||
&& php -m | grep -oiE '^sysvmsg$' \
|
||||
&& php-fpm -m | grep -oiE '^sysvmsg$' \
|
||||
&& php -m | grep -oiE '^sysvsem$' \
|
||||
&& php-fpm -m | grep -oiE '^sysvsem$' \
|
||||
&& php -m | grep -oiE '^sysvshm$' \
|
||||
&& php-fpm -m | grep -oiE '^sysvshm$' \
|
||||
&& php -m | grep -oiE '^tidy$' \
|
||||
&& php-fpm -m | grep -oiE '^tidy$' \
|
||||
&& php -m | grep -oiE '^tokenizer$' \
|
||||
&& php-fpm -m | grep -oiE '^tokenizer$' \
|
||||
&& php -m | grep -oiE '^uploadprogress$' \
|
||||
&& php-fpm -m | grep -oiE '^uploadprogress$' \
|
||||
&& php -m | grep -oiE '^wddx$' \
|
||||
&& php-fpm -m | grep -oiE '^wddx$' \
|
||||
&& php -m | grep -oiE '^xdebug$' \
|
||||
&& php-fpm -m | grep -oiE '^xdebug$' \
|
||||
&& php -m | grep -oiE '^xml$' \
|
||||
&& php-fpm -m | grep -oiE '^xml$' \
|
||||
&& php -m | grep -oiE '^xmlreader$' \
|
||||
&& php-fpm -m | grep -oiE '^xmlreader$' \
|
||||
&& php -m | grep -oiE '^xmlrpc$' \
|
||||
&& php-fpm -m | grep -oiE '^xmlrpc$' \
|
||||
&& php -m | grep -oiE '^xmlwriter$' \
|
||||
&& php-fpm -m | grep -oiE '^xmlwriter$' \
|
||||
&& php -m | grep -oiE '^xsl$' \
|
||||
&& php-fpm -m | grep -oiE '^xsl$' \
|
||||
&& php -m | grep -oiE '^zip$' \
|
||||
&& php-fpm -m | grep -oiE '^zip$' \
|
||||
&& true
|
||||
|
||||
|
||||
###
|
||||
### Ports
|
||||
###
|
||||
EXPOSE 9000
|
||||
|
||||
|
||||
###
|
||||
### Entrypoint
|
||||
###
|
||||
ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||
@@ -48,6 +48,7 @@ ENV BUILD_DEPS \
|
||||
libssl-dev \
|
||||
libsasl2-dev \
|
||||
libssl-dev \
|
||||
libsasl2-dev \
|
||||
freetds-dev \
|
||||
libfbclient2 \
|
||||
libib-util \
|
||||
@@ -92,6 +93,7 @@ ENV RUN_DEPS \
|
||||
libicu52 \
|
||||
libmcrypt4 \
|
||||
libmemcachedutil2 \
|
||||
libmysqlclient18 \
|
||||
libsybdb5 \
|
||||
libfbclient2 \
|
||||
libpq5 \
|
||||
@@ -113,6 +115,16 @@ RUN set -x \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& EXTENSION_DIR="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )" \
|
||||
&& if [ ! -d "${EXTENSION_DIR}" ]; then mkdir -p "${EXTENSION_DIR}"; fi \
|
||||
&& curl https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -L -o ioncube.tar.gz \
|
||||
&& tar xvfz ioncube.tar.gz \
|
||||
&& cd ioncube \
|
||||
&& cp "ioncube_loader_lin_5.4.so" "${EXTENSION_DIR}/ioncube.so" \
|
||||
&& cd ../ \
|
||||
&& rm -rf ioncube \
|
||||
&& rm -rf ioncube.tar.gz \
|
||||
\
|
||||
&& echo "/usr" | pecl install amqp \
|
||||
&& docker-php-ext-enable amqp \
|
||||
@@ -234,7 +246,7 @@ RUN set -x \
|
||||
${RUN_DEPS} \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& update-ca-certificates \
|
||||
&& find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true
|
||||
&& sh -c "find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true"
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -48,6 +48,7 @@ ENV BUILD_DEPS \
|
||||
libssl-dev \
|
||||
libsasl2-dev \
|
||||
libssl-dev \
|
||||
libsasl2-dev \
|
||||
freetds-dev \
|
||||
libfbclient2 \
|
||||
libib-util \
|
||||
@@ -94,6 +95,7 @@ ENV RUN_DEPS \
|
||||
libicu52 \
|
||||
libmcrypt4 \
|
||||
libmemcachedutil2 \
|
||||
libmysqlclient18 \
|
||||
libsybdb5 \
|
||||
libfbclient2 \
|
||||
libpq5 \
|
||||
@@ -115,6 +117,16 @@ RUN set -x \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& EXTENSION_DIR="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )" \
|
||||
&& if [ ! -d "${EXTENSION_DIR}" ]; then mkdir -p "${EXTENSION_DIR}"; fi \
|
||||
&& curl https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -L -o ioncube.tar.gz \
|
||||
&& tar xvfz ioncube.tar.gz \
|
||||
&& cd ioncube \
|
||||
&& cp "ioncube_loader_lin_5.5.so" "${EXTENSION_DIR}/ioncube.so" \
|
||||
&& cd ../ \
|
||||
&& rm -rf ioncube \
|
||||
&& rm -rf ioncube.tar.gz \
|
||||
\
|
||||
&& echo "/usr" | pecl install amqp \
|
||||
&& docker-php-ext-enable amqp \
|
||||
@@ -236,7 +248,7 @@ RUN set -x \
|
||||
${RUN_DEPS} \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& update-ca-certificates \
|
||||
&& find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true
|
||||
&& sh -c "find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true"
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -30,6 +30,7 @@ ENV BUILD_DEPS \
|
||||
libvpx-dev \
|
||||
zlib1g-dev \
|
||||
libfreetype6-dev \
|
||||
libwebp-dev \
|
||||
libgmp-dev \
|
||||
libmagickwand-dev \
|
||||
libc-client-dev \
|
||||
@@ -48,6 +49,7 @@ ENV BUILD_DEPS \
|
||||
libssl-dev \
|
||||
libsasl2-dev \
|
||||
libssl-dev \
|
||||
libsasl2-dev \
|
||||
freetds-dev \
|
||||
libfbclient2 \
|
||||
libib-util \
|
||||
@@ -56,7 +58,6 @@ ENV BUILD_DEPS \
|
||||
libpq-dev \
|
||||
libsqlite3-dev \
|
||||
libpq-dev \
|
||||
libssl-dev \
|
||||
libpspell-dev \
|
||||
libedit-dev \
|
||||
libreadline-dev \
|
||||
@@ -82,19 +83,21 @@ ENV BUILD_DEPS \
|
||||
git
|
||||
|
||||
ENV RUN_DEPS \
|
||||
librabbitmq1 \
|
||||
librabbitmq4 \
|
||||
libenchant1c2a \
|
||||
libpng12-0 \
|
||||
libpng16-16 \
|
||||
libjpeg62-turbo \
|
||||
libxpm4 \
|
||||
libvpx1 \
|
||||
libvpx4 \
|
||||
libfreetype6 \
|
||||
libmagickwand-6.q16-2 \
|
||||
libwebp6 \
|
||||
libmagickwand-6.q16-3 \
|
||||
libc-client2007e \
|
||||
libfbclient2 \
|
||||
libicu52 \
|
||||
libicu57 \
|
||||
libmcrypt4 \
|
||||
libmemcachedutil2 \
|
||||
libmariadbclient18 \
|
||||
libsybdb5 \
|
||||
libfbclient2 \
|
||||
libpq5 \
|
||||
@@ -102,10 +105,10 @@ ENV RUN_DEPS \
|
||||
libaspell15 \
|
||||
librecode0 \
|
||||
snmp \
|
||||
libnghttp2-5 \
|
||||
libtidy-0.99-0 \
|
||||
libnghttp2-14 \
|
||||
libtidy5 \
|
||||
libxslt1.1 \
|
||||
libzip2 \
|
||||
libzip4 \
|
||||
ca-certificates
|
||||
|
||||
|
||||
@@ -117,6 +120,16 @@ RUN set -x \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& EXTENSION_DIR="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )" \
|
||||
&& if [ ! -d "${EXTENSION_DIR}" ]; then mkdir -p "${EXTENSION_DIR}"; fi \
|
||||
&& curl https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -L -o ioncube.tar.gz \
|
||||
&& tar xvfz ioncube.tar.gz \
|
||||
&& cd ioncube \
|
||||
&& cp "ioncube_loader_lin_5.6.so" "${EXTENSION_DIR}/ioncube.so" \
|
||||
&& cd ../ \
|
||||
&& rm -rf ioncube \
|
||||
&& rm -rf ioncube.tar.gz \
|
||||
\
|
||||
&& echo "/usr" | pecl install amqp \
|
||||
&& docker-php-ext-enable amqp \
|
||||
@@ -187,7 +200,6 @@ RUN set -x \
|
||||
&& cd build && ./install \
|
||||
&& docker-php-ext-enable phalcon \
|
||||
&& cd / && rm -rf /tmp/phalcon \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) phar \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) posix \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pspell \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) readline \
|
||||
@@ -238,7 +250,7 @@ RUN set -x \
|
||||
${RUN_DEPS} \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& update-ca-certificates \
|
||||
&& find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true
|
||||
&& sh -c "find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true"
|
||||
|
||||
|
||||
###
|
||||
@@ -339,8 +351,6 @@ RUN set -x \
|
||||
&& php-fpm -m | grep -oiE '^pgsql$' \
|
||||
&& php -m | grep -oiE '^phalcon$' \
|
||||
&& php-fpm -m | grep -oiE '^phalcon$' \
|
||||
&& php -m | grep -oiE '^phar$' \
|
||||
&& php-fpm -m | grep -oiE '^phar$' \
|
||||
&& php -m | grep -oiE '^posix$' \
|
||||
&& php-fpm -m | grep -oiE '^posix$' \
|
||||
&& php -m | grep -oiE '^pspell$' \
|
||||
|
||||
@@ -40,6 +40,7 @@ ENV BUILD_DEPS \
|
||||
libib-util \
|
||||
firebird-dev \
|
||||
libicu-dev \
|
||||
bison \
|
||||
libldap2-dev \
|
||||
libsasl2-dev \
|
||||
libmcrypt-dev \
|
||||
@@ -47,6 +48,7 @@ ENV BUILD_DEPS \
|
||||
zlib1g-dev \
|
||||
libmemcached-dev \
|
||||
libssl-dev \
|
||||
libsasl2-dev \
|
||||
freetds-dev \
|
||||
libfbclient2 \
|
||||
libib-util \
|
||||
@@ -55,7 +57,6 @@ ENV BUILD_DEPS \
|
||||
libpq-dev \
|
||||
libsqlite3-dev \
|
||||
libpq-dev \
|
||||
libssl-dev \
|
||||
libpspell-dev \
|
||||
libedit-dev \
|
||||
libreadline-dev \
|
||||
@@ -80,18 +81,18 @@ ENV BUILD_DEPS \
|
||||
git
|
||||
|
||||
ENV RUN_DEPS \
|
||||
librabbitmq1 \
|
||||
librabbitmq4 \
|
||||
libenchant1c2a \
|
||||
libpng12-0 \
|
||||
libpng16-16 \
|
||||
libjpeg62-turbo \
|
||||
libxpm4 \
|
||||
libvpx1 \
|
||||
libvpx4 \
|
||||
libfreetype6 \
|
||||
libwebp-dev \
|
||||
libmagickwand-6.q16-2 \
|
||||
libwebp6 \
|
||||
libmagickwand-6.q16-3 \
|
||||
libc-client2007e \
|
||||
libfbclient2 \
|
||||
libicu52 \
|
||||
libicu57 \
|
||||
libmcrypt4 \
|
||||
libmemcachedutil2 \
|
||||
libsybdb5 \
|
||||
@@ -101,10 +102,10 @@ ENV RUN_DEPS \
|
||||
libaspell15 \
|
||||
librecode0 \
|
||||
snmp \
|
||||
libnghttp2-5 \
|
||||
libtidy-0.99-0 \
|
||||
libnghttp2-14 \
|
||||
libtidy5 \
|
||||
libxslt1.1 \
|
||||
libzip2 \
|
||||
libzip4 \
|
||||
ca-certificates
|
||||
|
||||
|
||||
@@ -116,6 +117,16 @@ RUN set -x \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& EXTENSION_DIR="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )" \
|
||||
&& if [ ! -d "${EXTENSION_DIR}" ]; then mkdir -p "${EXTENSION_DIR}"; fi \
|
||||
&& curl https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -L -o ioncube.tar.gz \
|
||||
&& tar xvfz ioncube.tar.gz \
|
||||
&& cd ioncube \
|
||||
&& cp "ioncube_loader_lin_7.0.so" "${EXTENSION_DIR}/ioncube.so" \
|
||||
&& cd ../ \
|
||||
&& rm -rf ioncube \
|
||||
&& rm -rf ioncube.tar.gz \
|
||||
\
|
||||
&& echo "/usr" | pecl install amqp \
|
||||
&& docker-php-ext-enable amqp \
|
||||
@@ -174,7 +185,6 @@ RUN set -x \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) mysqli \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) opcache \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pcntl \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo \
|
||||
&& ln -s /usr/lib/x86_64-linux-gnu/libsybdb.* /usr/lib/ \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_dblib \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_firebird \
|
||||
@@ -189,7 +199,6 @@ RUN set -x \
|
||||
&& cd build && ./install \
|
||||
&& docker-php-ext-enable phalcon \
|
||||
&& cd / && rm -rf /tmp/phalcon \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) phar \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) posix \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pspell \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) readline \
|
||||
@@ -206,7 +215,7 @@ RUN set -x \
|
||||
&& /usr/local/bin/docker-php-ext-configure soap --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) soap \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sockets \
|
||||
&& pecl install swoole \
|
||||
&& pecl install swoole-2.2.0 \
|
||||
&& docker-php-ext-enable swoole \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvmsg \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvsem \
|
||||
@@ -244,7 +253,7 @@ RUN set -x \
|
||||
${RUN_DEPS} \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& update-ca-certificates \
|
||||
&& find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true
|
||||
&& sh -c "find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true"
|
||||
|
||||
|
||||
###
|
||||
@@ -325,8 +334,6 @@ RUN set -x \
|
||||
&& php-fpm -m | grep -oiE '^Zend Opcache$' \
|
||||
&& php -m | grep -oiE '^pcntl$' \
|
||||
&& php-fpm -m | grep -oiE '^pcntl$' \
|
||||
&& php -m | grep -oiE '^pdo$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo$' \
|
||||
&& php -m | grep -oiE '^pdo_dblib$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_dblib$' \
|
||||
&& php -m | grep -oiE '^pdo_firebird$' \
|
||||
@@ -341,8 +348,6 @@ RUN set -x \
|
||||
&& php-fpm -m | grep -oiE '^pgsql$' \
|
||||
&& php -m | grep -oiE '^phalcon$' \
|
||||
&& php-fpm -m | grep -oiE '^phalcon$' \
|
||||
&& php -m | grep -oiE '^phar$' \
|
||||
&& php-fpm -m | grep -oiE '^phar$' \
|
||||
&& php -m | grep -oiE '^posix$' \
|
||||
&& php-fpm -m | grep -oiE '^posix$' \
|
||||
&& php -m | grep -oiE '^pspell$' \
|
||||
|
||||
@@ -47,6 +47,7 @@ ENV BUILD_DEPS \
|
||||
zlib1g-dev \
|
||||
libmemcached-dev \
|
||||
libssl-dev \
|
||||
libsasl2-dev \
|
||||
freetds-dev \
|
||||
libfbclient2 \
|
||||
libib-util \
|
||||
@@ -80,18 +81,18 @@ ENV BUILD_DEPS \
|
||||
git
|
||||
|
||||
ENV RUN_DEPS \
|
||||
librabbitmq1 \
|
||||
librabbitmq4 \
|
||||
libenchant1c2a \
|
||||
libpng12-0 \
|
||||
libpng16-16 \
|
||||
libjpeg62-turbo \
|
||||
libxpm4 \
|
||||
libvpx1 \
|
||||
libvpx4 \
|
||||
libfreetype6 \
|
||||
libwebp-dev \
|
||||
libmagickwand-6.q16-2 \
|
||||
libwebp6 \
|
||||
libmagickwand-6.q16-3 \
|
||||
libc-client2007e \
|
||||
libfbclient2 \
|
||||
libicu52 \
|
||||
libicu57 \
|
||||
libmcrypt4 \
|
||||
libmemcachedutil2 \
|
||||
libsybdb5 \
|
||||
@@ -101,10 +102,10 @@ ENV RUN_DEPS \
|
||||
libaspell15 \
|
||||
librecode0 \
|
||||
snmp \
|
||||
libnghttp2-5 \
|
||||
libtidy-0.99-0 \
|
||||
libnghttp2-14 \
|
||||
libtidy5 \
|
||||
libxslt1.1 \
|
||||
libzip2 \
|
||||
libzip4 \
|
||||
ca-certificates
|
||||
|
||||
|
||||
@@ -116,6 +117,16 @@ RUN set -x \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& EXTENSION_DIR="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )" \
|
||||
&& if [ ! -d "${EXTENSION_DIR}" ]; then mkdir -p "${EXTENSION_DIR}"; fi \
|
||||
&& curl https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -L -o ioncube.tar.gz \
|
||||
&& tar xvfz ioncube.tar.gz \
|
||||
&& cd ioncube \
|
||||
&& cp "ioncube_loader_lin_7.1.so" "${EXTENSION_DIR}/ioncube.so" \
|
||||
&& cd ../ \
|
||||
&& rm -rf ioncube \
|
||||
&& rm -rf ioncube.tar.gz \
|
||||
\
|
||||
&& echo "/usr" | pecl install amqp \
|
||||
&& docker-php-ext-enable amqp \
|
||||
@@ -244,7 +255,7 @@ RUN set -x \
|
||||
${RUN_DEPS} \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& update-ca-certificates \
|
||||
&& find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true
|
||||
&& sh -c "find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true"
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -47,6 +47,7 @@ ENV BUILD_DEPS \
|
||||
zlib1g-dev \
|
||||
libmemcached-dev \
|
||||
libssl-dev \
|
||||
libsasl2-dev \
|
||||
freetds-dev \
|
||||
libfbclient2 \
|
||||
libib-util \
|
||||
@@ -118,7 +119,17 @@ RUN set -x \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& pecl install amqp \
|
||||
&& EXTENSION_DIR="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )" \
|
||||
&& if [ ! -d "${EXTENSION_DIR}" ]; then mkdir -p "${EXTENSION_DIR}"; fi \
|
||||
&& curl https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -L -o ioncube.tar.gz \
|
||||
&& tar xvfz ioncube.tar.gz \
|
||||
&& cd ioncube \
|
||||
&& cp "ioncube_loader_lin_7.2.so" "${EXTENSION_DIR}/ioncube.so" \
|
||||
&& cd ../ \
|
||||
&& rm -rf ioncube \
|
||||
&& rm -rf ioncube.tar.gz \
|
||||
\
|
||||
&& echo "/usr" | pecl install amqp \
|
||||
&& docker-php-ext-enable amqp \
|
||||
&& pecl install apcu \
|
||||
&& docker-php-ext-enable apcu \
|
||||
@@ -235,6 +246,7 @@ RUN set -x \
|
||||
&& /usr/local/bin/docker-php-ext-configure xmlwriter --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xmlwriter \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xsl \
|
||||
&& /usr/local/bin/docker-php-ext-configure zip --with-zlib-dir=/usr --with-pcre-dir=/usr --with-libzip \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) zip \
|
||||
\
|
||||
\
|
||||
@@ -246,7 +258,7 @@ RUN set -x \
|
||||
${RUN_DEPS} \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& update-ca-certificates \
|
||||
&& find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true
|
||||
&& sh -c "find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true"
|
||||
|
||||
|
||||
###
|
||||
|
||||
421
Dockerfiles/mods/Dockerfile-7.3
Normal file
421
Dockerfiles/mods/Dockerfile-7.3
Normal file
@@ -0,0 +1,421 @@
|
||||
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-mods.j2 instead.
|
||||
FROM devilbox/php-fpm:7.3-base
|
||||
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
||||
|
||||
|
||||
###
|
||||
### Labels
|
||||
###
|
||||
LABEL \
|
||||
name="cytopia's PHP-FPM 7.3 Image" \
|
||||
image="devilbox/php-fpm" \
|
||||
tag="7.3-mods" \
|
||||
vendor="devilbox" \
|
||||
license="MIT"
|
||||
|
||||
|
||||
###
|
||||
### Envs
|
||||
###
|
||||
ENV BUILD_DEPS \
|
||||
libbz2-dev \
|
||||
libcurl4-openssl-dev \
|
||||
libxml2-dev \
|
||||
libenchant-dev \
|
||||
libssl-dev \
|
||||
libpng-dev \
|
||||
libjpeg-dev \
|
||||
libxpm-dev \
|
||||
libvpx-dev \
|
||||
zlib1g-dev \
|
||||
libfreetype6-dev \
|
||||
libwebp-dev \
|
||||
libgmp-dev \
|
||||
libmagickwand-dev \
|
||||
libc-client-dev \
|
||||
libkrb5-dev \
|
||||
libcurl4-openssl-dev \
|
||||
libfbclient2 \
|
||||
libib-util \
|
||||
firebird-dev \
|
||||
libicu-dev \
|
||||
libldap2-dev \
|
||||
libsasl2-dev \
|
||||
libmcrypt-dev \
|
||||
zlib1g-dev \
|
||||
libmemcached-dev \
|
||||
libssl-dev \
|
||||
libsasl2-dev \
|
||||
freetds-dev \
|
||||
libfbclient2 \
|
||||
libib-util \
|
||||
firebird-dev \
|
||||
zlib1g-dev \
|
||||
libpq-dev \
|
||||
libsqlite3-dev \
|
||||
libpq-dev \
|
||||
libssl-dev \
|
||||
libpspell-dev \
|
||||
libedit-dev \
|
||||
libreadline-dev \
|
||||
librecode-dev \
|
||||
libmm-dev \
|
||||
libxml2-dev \
|
||||
libssl-dev \
|
||||
libsnmp-dev \
|
||||
snmp \
|
||||
libxml2-dev \
|
||||
libsodium-dev \
|
||||
libnghttp2-dev \
|
||||
libssl-dev \
|
||||
libhiredis-dev \
|
||||
cmake \
|
||||
libtidy-dev \
|
||||
libxml2-dev \
|
||||
libxml2-dev \
|
||||
libxml2-dev \
|
||||
libxml2-dev \
|
||||
libxslt-dev \
|
||||
zlib1g-dev \
|
||||
libzip-dev \
|
||||
ca-certificates \
|
||||
git
|
||||
|
||||
ENV RUN_DEPS \
|
||||
libenchant1c2a \
|
||||
libpng16-16 \
|
||||
libjpeg62-turbo \
|
||||
libxpm4 \
|
||||
libvpx4 \
|
||||
libfreetype6 \
|
||||
libwebp6 \
|
||||
libmagickwand-6.q16-3 \
|
||||
libc-client2007e \
|
||||
libfbclient2 \
|
||||
libicu57 \
|
||||
libmcrypt4 \
|
||||
libmemcachedutil2 \
|
||||
libsybdb5 \
|
||||
libfbclient2 \
|
||||
libpq5 \
|
||||
libpq5 \
|
||||
libaspell15 \
|
||||
librecode0 \
|
||||
snmp \
|
||||
libnghttp2-14 \
|
||||
libhiredis0.13 \
|
||||
libtidy5 \
|
||||
libxslt1.1 \
|
||||
libzip4 \
|
||||
ca-certificates
|
||||
|
||||
|
||||
###
|
||||
### Install
|
||||
###
|
||||
RUN set -x \
|
||||
&& apt-get update \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& pecl install apcu \
|
||||
&& docker-php-ext-enable apcu \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) bcmath \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) bz2 \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) calendar \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) ctype \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) curl \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) dba \
|
||||
&& /usr/local/bin/docker-php-ext-configure dom --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) dom \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) enchant \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) exif \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) fileinfo \
|
||||
&& /usr/local/bin/docker-php-ext-configure ftp --with-openssl-dir \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) ftp \
|
||||
&& ln -s /usr/lib/x86_64-linux-gnu/libXpm.* /usr/lib/ \
|
||||
&& /usr/local/bin/docker-php-ext-configure gd --with-gd --with-webp-dir=/usr --with-jpeg-dir=/usr --with-png-dir=/usr --with-zlib-dir=/usr --with-xpm-dir=/usr --with-freetype-dir=/usr --enable-gd-jis-conv \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) gd \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) gettext \
|
||||
&& ln /usr/include/x86_64-linux-gnu/gmp.h /usr/include/ \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) gmp \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) hash \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) iconv \
|
||||
&& pecl install igbinary \
|
||||
&& docker-php-ext-enable igbinary \
|
||||
&& pecl install imagick \
|
||||
&& docker-php-ext-enable imagick \
|
||||
&& ln -s /usr/lib/x86_64-linux-gnu/libkrb5* /usr/lib/ \
|
||||
&& /usr/local/bin/docker-php-ext-configure imap --with-kerberos --with-imap-ssl --with-imap \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) imap \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) interbase \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) intl \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) json \
|
||||
&& ln -s /usr/lib/x86_64-linux-gnu/libldap* /usr/lib/ \
|
||||
&& /usr/local/bin/docker-php-ext-configure ldap --with-ldap --with-ldap-sasl \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) ldap \
|
||||
&& pecl install mcrypt-1.0.1 \
|
||||
&& docker-php-ext-enable mcrypt \
|
||||
&& git clone -v https://github.com/php-memcached-dev/php-memcached /tmp/memcached \
|
||||
&& cd /tmp/memcached \
|
||||
&& git checkout master \
|
||||
&& phpize && ./configure --enable-memcached && make -j$(getconf _NPROCESSORS_ONLN) && make install \
|
||||
&& docker-php-ext-enable memcached \
|
||||
&& cd / && rm -rf /tmp/memcached \
|
||||
&& pecl install mongodb \
|
||||
&& docker-php-ext-enable mongodb \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) mysqli \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) opcache \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pcntl \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo \
|
||||
&& ln -s /usr/lib/x86_64-linux-gnu/libsybdb.* /usr/lib/ \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_dblib \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_firebird \
|
||||
&& /usr/local/bin/docker-php-ext-configure pdo_mysql --with-zlib-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_mysql \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_pgsql \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_sqlite \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pgsql \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) phar \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) posix \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pspell \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) readline \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) recode \
|
||||
&& pecl install redis \
|
||||
&& docker-php-ext-enable redis \
|
||||
&& /usr/local/bin/docker-php-ext-configure session --with-mm \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) session \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) shmop \
|
||||
&& /usr/local/bin/docker-php-ext-configure simplexml --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) simplexml \
|
||||
&& /usr/local/bin/docker-php-ext-configure snmp --with-openssl-dir \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) snmp \
|
||||
&& /usr/local/bin/docker-php-ext-configure soap --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) soap \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sockets \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sodium \
|
||||
&& git clone -v https://github.com/swoole/swoole-src /tmp/swoole \
|
||||
&& cd /tmp/swoole \
|
||||
&& git checkout master \
|
||||
&& git submodule update --init --recursive \
|
||||
&& cd thirdparty/hiredis \
|
||||
&& make -j$(getconf _NPROCESSORS_ONLN) \
|
||||
&& make install \
|
||||
&& cd ../nghttp2 \
|
||||
&& cmake . \
|
||||
&& make install \
|
||||
&& ldconfig \
|
||||
&& cd ../.. \
|
||||
&& phpize \
|
||||
&& ./configure \
|
||||
--enable-async-redis \
|
||||
--enable-openssl \
|
||||
--enable-thread \
|
||||
--enable-swoole \
|
||||
--enable-swoole-static \
|
||||
--with-swoole \
|
||||
--with-openssl-dir=/usr \
|
||||
--enable-mysqlnd \
|
||||
--enable-coroutine \
|
||||
--enable-picohttpparser \
|
||||
#`--enable-timewheel` \
|
||||
#`--enable-hugepage` \
|
||||
#`--enable-asan` \
|
||||
#`--with-phpx-dir=` \
|
||||
#`--with-jemalloc-dir=/usr/include/jemalloc` \
|
||||
#`--enable-coroutine-postgresql` \
|
||||
#`--enable-http2` \
|
||||
#`--enable-sockets` \
|
||||
#`--with-libpq-dir=/usr/include/postgresql/libpq/` \
|
||||
&& make -j$(getconf _NPROCESSORS_ONLN) \
|
||||
&& make install \
|
||||
\
|
||||
&& docker-php-ext-enable swoole \
|
||||
&& cd / && rm -rf /tmp/swoole \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvmsg \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvsem \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvshm \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) tidy \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) tokenizer \
|
||||
&& git clone -v https://github.com/php/pecl-php-uploadprogress /tmp/uploadprogress \
|
||||
&& cd /tmp/uploadprogress \
|
||||
&& phpize \
|
||||
&& ./configure --enable-uploadprogress \
|
||||
&& make -j$(getconf _NPROCESSORS_ONLN) \
|
||||
&& make install \
|
||||
&& docker-php-ext-enable uploadprogress \
|
||||
&& cd / && rm -rf /tmp/uploadprogress \
|
||||
&& /usr/local/bin/docker-php-ext-configure wddx --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) wddx \
|
||||
&& /usr/local/bin/docker-php-ext-configure xml --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xml \
|
||||
&& /usr/local/bin/docker-php-ext-configure xmlrpc --with-libxml-dir=/usr --with-iconv-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xmlrpc \
|
||||
&& /usr/local/bin/docker-php-ext-configure xmlwriter --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xmlwriter \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xsl \
|
||||
&& /usr/local/bin/docker-php-ext-configure zip --with-zlib-dir=/usr --with-pcre-dir=/usr --with-libzip \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) zip \
|
||||
\
|
||||
\
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
${RUN_DEPS} \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& update-ca-certificates \
|
||||
&& sh -c "find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true"
|
||||
|
||||
|
||||
###
|
||||
### Verify
|
||||
###
|
||||
RUN set -x \
|
||||
&& php -v | grep -oE 'PHP\s[.0-9]+' | grep -oE '[.0-9]+' | grep '^7.3' \
|
||||
&& /usr/local/sbin/php-fpm --test \
|
||||
&& PHP_ERROR="$( php -v 2>&1 1>/dev/null )" \
|
||||
&& if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi
|
||||
|
||||
RUN set -x \
|
||||
&& php -m | grep -oiE '^apcu$' \
|
||||
&& php-fpm -m | grep -oiE '^apcu$' \
|
||||
&& php -m | grep -oiE '^bcmath$' \
|
||||
&& php-fpm -m | grep -oiE '^bcmath$' \
|
||||
&& php -m | grep -oiE '^bz2$' \
|
||||
&& php-fpm -m | grep -oiE '^bz2$' \
|
||||
&& php -m | grep -oiE '^calendar$' \
|
||||
&& php-fpm -m | grep -oiE '^calendar$' \
|
||||
&& php -m | grep -oiE '^ctype$' \
|
||||
&& php-fpm -m | grep -oiE '^ctype$' \
|
||||
&& php -m | grep -oiE '^curl$' \
|
||||
&& php-fpm -m | grep -oiE '^curl$' \
|
||||
&& php -m | grep -oiE '^dba$' \
|
||||
&& php-fpm -m | grep -oiE '^dba$' \
|
||||
&& php -m | grep -oiE '^dom$' \
|
||||
&& php-fpm -m | grep -oiE '^dom$' \
|
||||
&& php -m | grep -oiE '^enchant$' \
|
||||
&& php-fpm -m | grep -oiE '^enchant$' \
|
||||
&& php -m | grep -oiE '^exif$' \
|
||||
&& php-fpm -m | grep -oiE '^exif$' \
|
||||
&& php -m | grep -oiE '^fileinfo$' \
|
||||
&& php-fpm -m | grep -oiE '^fileinfo$' \
|
||||
&& php -m | grep -oiE '^ftp$' \
|
||||
&& php-fpm -m | grep -oiE '^ftp$' \
|
||||
&& php -m | grep -oiE '^gd$' \
|
||||
&& php-fpm -m | grep -oiE '^gd$' \
|
||||
&& php -m | grep -oiE '^gettext$' \
|
||||
&& php-fpm -m | grep -oiE '^gettext$' \
|
||||
&& php -m | grep -oiE '^gmp$' \
|
||||
&& php-fpm -m | grep -oiE '^gmp$' \
|
||||
&& php -m | grep -oiE '^hash$' \
|
||||
&& php-fpm -m | grep -oiE '^hash$' \
|
||||
&& php -m | grep -oiE '^iconv$' \
|
||||
&& php-fpm -m | grep -oiE '^iconv$' \
|
||||
&& php -m | grep -oiE '^igbinary$' \
|
||||
&& php-fpm -m | grep -oiE '^igbinary$' \
|
||||
&& php -m | grep -oiE '^imagick$' \
|
||||
&& php-fpm -m | grep -oiE '^imagick$' \
|
||||
&& php -m | grep -oiE '^imap$' \
|
||||
&& php-fpm -m | grep -oiE '^imap$' \
|
||||
&& php -m | grep -oiE '^interbase$' \
|
||||
&& php-fpm -m | grep -oiE '^interbase$' \
|
||||
&& php -m | grep -oiE '^intl$' \
|
||||
&& php-fpm -m | grep -oiE '^intl$' \
|
||||
&& php -m | grep -oiE '^json$' \
|
||||
&& php-fpm -m | grep -oiE '^json$' \
|
||||
&& php -m | grep -oiE '^ldap$' \
|
||||
&& php-fpm -m | grep -oiE '^ldap$' \
|
||||
&& php -m | grep -oiE '^mcrypt$' \
|
||||
&& php-fpm -m | grep -oiE '^mcrypt$' \
|
||||
&& php -m | grep -oiE '^memcached$' \
|
||||
&& php-fpm -m | grep -oiE '^memcached$' \
|
||||
&& php -m | grep -oiE '^mongodb$' \
|
||||
&& php-fpm -m | grep -oiE '^mongodb$' \
|
||||
&& php -m | grep -oiE '^mysqli$' \
|
||||
&& php-fpm -m | grep -oiE '^mysqli$' \
|
||||
&& php -m | grep -oiE '^Zend Opcache$' \
|
||||
&& php-fpm -m | grep -oiE '^Zend Opcache$' \
|
||||
&& php -m | grep -oiE '^pcntl$' \
|
||||
&& php-fpm -m | grep -oiE '^pcntl$' \
|
||||
&& php -m | grep -oiE '^pdo$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo$' \
|
||||
&& php -m | grep -oiE '^pdo_dblib$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_dblib$' \
|
||||
&& php -m | grep -oiE '^pdo_firebird$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_firebird$' \
|
||||
&& php -m | grep -oiE '^pdo_mysql$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_mysql$' \
|
||||
&& php -m | grep -oiE '^pdo_pgsql$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_pgsql$' \
|
||||
&& php -m | grep -oiE '^pdo_sqlite$' \
|
||||
&& php-fpm -m | grep -oiE '^pdo_sqlite$' \
|
||||
&& php -m | grep -oiE '^pgsql$' \
|
||||
&& php-fpm -m | grep -oiE '^pgsql$' \
|
||||
&& php -m | grep -oiE '^phar$' \
|
||||
&& php-fpm -m | grep -oiE '^phar$' \
|
||||
&& php -m | grep -oiE '^posix$' \
|
||||
&& php-fpm -m | grep -oiE '^posix$' \
|
||||
&& php -m | grep -oiE '^pspell$' \
|
||||
&& php-fpm -m | grep -oiE '^pspell$' \
|
||||
&& php -m | grep -oiE '^readline$' \
|
||||
&& php-fpm -m | grep -oiE '^readline$' \
|
||||
&& php -m | grep -oiE '^recode$' \
|
||||
&& php-fpm -m | grep -oiE '^recode$' \
|
||||
&& php -m | grep -oiE '^redis$' \
|
||||
&& php-fpm -m | grep -oiE '^redis$' \
|
||||
&& php -m | grep -oiE '^session$' \
|
||||
&& php-fpm -m | grep -oiE '^session$' \
|
||||
&& php -m | grep -oiE '^shmop$' \
|
||||
&& php-fpm -m | grep -oiE '^shmop$' \
|
||||
&& php -m | grep -oiE '^simplexml$' \
|
||||
&& php-fpm -m | grep -oiE '^simplexml$' \
|
||||
&& php -m | grep -oiE '^snmp$' \
|
||||
&& php-fpm -m | grep -oiE '^snmp$' \
|
||||
&& php -m | grep -oiE '^soap$' \
|
||||
&& php-fpm -m | grep -oiE '^soap$' \
|
||||
&& php -m | grep -oiE '^sockets$' \
|
||||
&& php-fpm -m | grep -oiE '^sockets$' \
|
||||
&& php -m | grep -oiE '^sodium$' \
|
||||
&& php-fpm -m | grep -oiE '^sodium$' \
|
||||
&& php -m | grep -oiE '^swoole$' \
|
||||
&& php-fpm -m | grep -oiE '^swoole$' \
|
||||
&& php -m | grep -oiE '^sysvmsg$' \
|
||||
&& php-fpm -m | grep -oiE '^sysvmsg$' \
|
||||
&& php -m | grep -oiE '^sysvsem$' \
|
||||
&& php-fpm -m | grep -oiE '^sysvsem$' \
|
||||
&& php -m | grep -oiE '^sysvshm$' \
|
||||
&& php-fpm -m | grep -oiE '^sysvshm$' \
|
||||
&& php -m | grep -oiE '^tidy$' \
|
||||
&& php-fpm -m | grep -oiE '^tidy$' \
|
||||
&& php -m | grep -oiE '^tokenizer$' \
|
||||
&& php-fpm -m | grep -oiE '^tokenizer$' \
|
||||
&& php -m | grep -oiE '^uploadprogress$' \
|
||||
&& php-fpm -m | grep -oiE '^uploadprogress$' \
|
||||
&& php -m | grep -oiE '^wddx$' \
|
||||
&& php-fpm -m | grep -oiE '^wddx$' \
|
||||
&& php -m | grep -oiE '^xml$' \
|
||||
&& php-fpm -m | grep -oiE '^xml$' \
|
||||
&& php -m | grep -oiE '^xmlrpc$' \
|
||||
&& php-fpm -m | grep -oiE '^xmlrpc$' \
|
||||
&& php -m | grep -oiE '^xmlwriter$' \
|
||||
&& php-fpm -m | grep -oiE '^xmlwriter$' \
|
||||
&& php -m | grep -oiE '^xsl$' \
|
||||
&& php-fpm -m | grep -oiE '^xsl$' \
|
||||
&& php -m | grep -oiE '^zip$' \
|
||||
&& php-fpm -m | grep -oiE '^zip$' \
|
||||
&& true
|
||||
|
||||
|
||||
###
|
||||
### Ports
|
||||
###
|
||||
EXPOSE 9000
|
||||
|
||||
|
||||
###
|
||||
### Entrypoint
|
||||
###
|
||||
ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||
77
Dockerfiles/prod/Dockerfile-5.2
Normal file
77
Dockerfiles/prod/Dockerfile-5.2
Normal file
@@ -0,0 +1,77 @@
|
||||
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-prod.j2 instead.
|
||||
FROM devilbox/php-fpm:5.2-mods
|
||||
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
||||
|
||||
|
||||
###
|
||||
### Labels
|
||||
###
|
||||
LABEL \
|
||||
name="cytopia's PHP-FPM 5.2 Image" \
|
||||
image="devilbox/php-fpm" \
|
||||
tag="5.2-prod" \
|
||||
vendor="devilbox" \
|
||||
license="MIT"
|
||||
|
||||
|
||||
###
|
||||
### Install
|
||||
###
|
||||
RUN set -x \
|
||||
&& apt-get update \
|
||||
&& DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
locales-all \
|
||||
postfix \
|
||||
postfix-pcre \
|
||||
rsyslog \
|
||||
socat \
|
||||
supervisor \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
\
|
||||
&& rm -rf /etc/supervisor* \
|
||||
&& mkdir -p /etc/supervisor/conf.d \
|
||||
&& mkdir -p /var/log/supervisor
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Verify
|
||||
###
|
||||
RUN set -x \
|
||||
&& php -v | grep -oE 'PHP\s[.0-9]+' | grep -oE '[.0-9]+' | grep '^5.2' \
|
||||
&& /usr/local/sbin/php-fpm --test \
|
||||
&& PHP_ERROR="$( php -v 2>&1 1>/dev/null )" \
|
||||
&& if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/postfix.sh /usr/local/sbin/postfix.sh
|
||||
COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /var/log/php
|
||||
VOLUME /var/mail
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Ports
|
||||
###
|
||||
EXPOSE 9000
|
||||
|
||||
|
||||
###
|
||||
### Entrypoint
|
||||
###
|
||||
ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||
77
Dockerfiles/prod/Dockerfile-5.3
Normal file
77
Dockerfiles/prod/Dockerfile-5.3
Normal file
@@ -0,0 +1,77 @@
|
||||
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-prod.j2 instead.
|
||||
FROM devilbox/php-fpm:5.3-mods
|
||||
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
||||
|
||||
|
||||
###
|
||||
### Labels
|
||||
###
|
||||
LABEL \
|
||||
name="cytopia's PHP-FPM 5.3 Image" \
|
||||
image="devilbox/php-fpm" \
|
||||
tag="5.3-prod" \
|
||||
vendor="devilbox" \
|
||||
license="MIT"
|
||||
|
||||
|
||||
###
|
||||
### Install
|
||||
###
|
||||
RUN set -x \
|
||||
&& apt-get update \
|
||||
&& DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
locales-all \
|
||||
postfix \
|
||||
postfix-pcre \
|
||||
rsyslog \
|
||||
socat \
|
||||
supervisor \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
\
|
||||
&& rm -rf /etc/supervisor* \
|
||||
&& mkdir -p /etc/supervisor/conf.d \
|
||||
&& mkdir -p /var/log/supervisor
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Verify
|
||||
###
|
||||
RUN set -x \
|
||||
&& php -v | grep -oE 'PHP\s[.0-9]+' | grep -oE '[.0-9]+' | grep '^5.3' \
|
||||
&& /usr/local/sbin/php-fpm --test \
|
||||
&& PHP_ERROR="$( php -v 2>&1 1>/dev/null )" \
|
||||
&& if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/postfix.sh /usr/local/sbin/postfix.sh
|
||||
COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /var/log/php
|
||||
VOLUME /var/mail
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Ports
|
||||
###
|
||||
EXPOSE 9000
|
||||
|
||||
|
||||
###
|
||||
### Entrypoint
|
||||
###
|
||||
ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||
@@ -58,6 +58,7 @@ COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /var/log/php
|
||||
VOLUME /var/mail
|
||||
|
||||
@@ -58,6 +58,7 @@ COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /var/log/php
|
||||
VOLUME /var/mail
|
||||
|
||||
@@ -58,6 +58,7 @@ COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /var/log/php
|
||||
VOLUME /var/mail
|
||||
|
||||
@@ -58,6 +58,7 @@ COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /var/log/php
|
||||
VOLUME /var/mail
|
||||
|
||||
@@ -58,6 +58,7 @@ COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /var/log/php
|
||||
VOLUME /var/mail
|
||||
|
||||
@@ -58,6 +58,7 @@ COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /var/log/php
|
||||
VOLUME /var/mail
|
||||
|
||||
77
Dockerfiles/prod/Dockerfile-7.3
Normal file
77
Dockerfiles/prod/Dockerfile-7.3
Normal file
@@ -0,0 +1,77 @@
|
||||
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-prod.j2 instead.
|
||||
FROM devilbox/php-fpm:7.3-mods
|
||||
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
||||
|
||||
|
||||
###
|
||||
### Labels
|
||||
###
|
||||
LABEL \
|
||||
name="cytopia's PHP-FPM 7.3 Image" \
|
||||
image="devilbox/php-fpm" \
|
||||
tag="7.3-prod" \
|
||||
vendor="devilbox" \
|
||||
license="MIT"
|
||||
|
||||
|
||||
###
|
||||
### Install
|
||||
###
|
||||
RUN set -x \
|
||||
&& apt-get update \
|
||||
&& DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
locales-all \
|
||||
postfix \
|
||||
postfix-pcre \
|
||||
rsyslog \
|
||||
socat \
|
||||
supervisor \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
\
|
||||
&& rm -rf /etc/supervisor* \
|
||||
&& mkdir -p /etc/supervisor/conf.d \
|
||||
&& mkdir -p /var/log/supervisor
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Verify
|
||||
###
|
||||
RUN set -x \
|
||||
&& php -v | grep -oE 'PHP\s[.0-9]+' | grep -oE '[.0-9]+' | grep '^7.3' \
|
||||
&& /usr/local/sbin/php-fpm --test \
|
||||
&& PHP_ERROR="$( php -v 2>&1 1>/dev/null )" \
|
||||
&& if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/postfix.sh /usr/local/sbin/postfix.sh
|
||||
COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /var/log/php
|
||||
VOLUME /var/mail
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Ports
|
||||
###
|
||||
EXPOSE 9000
|
||||
|
||||
|
||||
###
|
||||
### Entrypoint
|
||||
###
|
||||
ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||
@@ -10,21 +10,26 @@ set -o pipefail
|
||||
############################################################
|
||||
|
||||
_log_to_dockerlogs() {
|
||||
local conf_logfile="${1}"
|
||||
local php_fpm_conf="${1}"
|
||||
local php_ini_conf="${2}"
|
||||
{
|
||||
echo "[global]"
|
||||
echo "error_log = /proc/self/fd/2"
|
||||
echo "[www]"
|
||||
echo "access.log = /proc/self/fd/2"
|
||||
} > "${conf_logfile}"
|
||||
} > "${php_fpm_conf}"
|
||||
{
|
||||
echo "error_log = /proc/self/fd/2"
|
||||
} > "${php_ini_conf}"
|
||||
}
|
||||
|
||||
_log_to_files() {
|
||||
local conf_logfile="${1}"
|
||||
local log_dir="${2}"
|
||||
local user="${3}"
|
||||
local group="${4}"
|
||||
local debug="${5}"
|
||||
local php_fpm_conf="${1}"
|
||||
local php_ini_conf="${2}"
|
||||
local log_dir="${3}"
|
||||
local user="${4}"
|
||||
local group="${5}"
|
||||
local debug="${6}"
|
||||
|
||||
# Create Log directory and files
|
||||
if [ ! -d "${log_dir}" ]; then
|
||||
@@ -43,7 +48,10 @@ _log_to_files() {
|
||||
echo "error_log = ${log_dir}/php-fpm.error"
|
||||
echo "[www]"
|
||||
echo "access.log = ${log_dir}/php-fpm.access"
|
||||
} > "${conf_logfile}"
|
||||
} > "${php_fpm_conf}"
|
||||
{
|
||||
echo "error_log = ${log_dir}/php-fpm.error"
|
||||
} > "${php_ini_conf}"
|
||||
}
|
||||
|
||||
|
||||
@@ -77,17 +85,18 @@ is_docker_logs_enabled() {
|
||||
set_docker_logs() {
|
||||
local env_varname="${1}"
|
||||
local log_dir="${2}"
|
||||
local conf_logfile="${3}"
|
||||
local user="${4}"
|
||||
local group="${5}"
|
||||
local debug="${6}"
|
||||
local php_fpm_conf="${3}"
|
||||
local php_ini_conf="${4}"
|
||||
local user="${5}"
|
||||
local group="${6}"
|
||||
local debug="${7}"
|
||||
|
||||
local docker_logs=
|
||||
|
||||
if ! env_set "${env_varname}"; then
|
||||
log "info" "\$${env_varname} not set." "${debug}"
|
||||
log "info" "Logging to docker logs (stdout and stderr)." "${debug}"
|
||||
_log_to_dockerlogs "${conf_logfile}"
|
||||
_log_to_dockerlogs "${php_fpm_conf}" "${php_ini_conf}"
|
||||
else
|
||||
docker_logs="$( env_get "${env_varname}" )"
|
||||
|
||||
@@ -95,12 +104,12 @@ set_docker_logs() {
|
||||
if [ "${docker_logs}" = "0" ]; then
|
||||
log "info" "\$${env_varname} set to 0. Logging to files under: ${log_dir}" "${debug}"
|
||||
log "info" "Make sure to mount this directory in order to view logs" "${debug}"
|
||||
_log_to_files "${conf_logfile}" "${log_dir}" "${user}" "${group}" "${debug}"
|
||||
_log_to_files "${php_fpm_conf}" "${php_ini_conf}" "${log_dir}" "${user}" "${group}" "${debug}"
|
||||
|
||||
# Keep docker logs
|
||||
elif [ "${docker_logs}" = "1" ]; then
|
||||
log "info" "\$${env_varname} set to 1. Logging to docker logs (stdout and stderr)." "${debug}"
|
||||
_log_to_dockerlogs "${conf_logfile}"
|
||||
_log_to_dockerlogs "${php_fpm_conf}" "${php_ini_conf}"
|
||||
else
|
||||
log "err" "Invalid value for \$${env_varname}. Can only be 0 or 1. Provided: ${docker_logs}" "${debug}"
|
||||
exit 1
|
||||
|
||||
@@ -27,8 +27,8 @@ copy_ini_files() {
|
||||
'
|
||||
for ini_f in ${ini_files}; do
|
||||
ini_name="$( basename "${ini_f}" )"
|
||||
log "info" "PHP.ini: ${ini_name} -> ${ini_dst}/zzz-devilbox-${ini_name}" "${debug}"
|
||||
run "cp ${ini_f} ${ini_dst}/zzz-devilbox-${ini_name}" "${debug}"
|
||||
log "info" "PHP.ini: ${ini_name} -> ${ini_dst}/yyy-devilbox-user-runtime-${ini_name}" "${debug}"
|
||||
run "cp ${ini_f} ${ini_dst}/yyy-devilbox-user-runtime-${ini_name}" "${debug}"
|
||||
done
|
||||
run "find ${ini_dst} -type f -iname '*.ini' -exec chmod 0644 \"{}\" \;" "${debug}"
|
||||
}
|
||||
|
||||
64
Dockerfiles/prod/data/docker-entrypoint.d/36-custom-php-fpm-files.sh
Executable file
64
Dockerfiles/prod/data/docker-entrypoint.d/36-custom-php-fpm-files.sh
Executable file
@@ -0,0 +1,64 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
set -u
|
||||
set -o pipefail
|
||||
|
||||
|
||||
############################################################
|
||||
# Functions
|
||||
############################################################
|
||||
|
||||
###
|
||||
### Copy PHP-FPM *.conf files from source to destination with prefix
|
||||
###
|
||||
copy_fpm_files() {
|
||||
local fpm_src="${1}"
|
||||
local fpm_dst="${2}"
|
||||
local debug="${3}"
|
||||
|
||||
if [ ! -d "${fpm_src}" ]; then
|
||||
run "mkdir -p ${fpm_src}" "${debug}"
|
||||
fi
|
||||
fpm_files="$( find "${fpm_src}" -type f -iname '*.conf' )"
|
||||
|
||||
# loop over them line by line
|
||||
IFS='
|
||||
'
|
||||
for fpm_f in ${fpm_files}; do
|
||||
fpm_name="$( basename "${fpm_f}" )"
|
||||
log "info" "PHP-FPM.conf: ${fpm_name} -> ${fpm_dst}/yyy-devilbox-user-runtime-${fpm_name}" "${debug}"
|
||||
run "cp ${fpm_f} ${fpm_dst}/yyy-devilbox-user-runtime-${fpm_name}" "${debug}"
|
||||
done
|
||||
run "find ${fpm_dst} -type f -iname '*.conf' -exec chmod 0644 \"{}\" \;" "${debug}"
|
||||
}
|
||||
|
||||
###
|
||||
### Copy php-fpm.conf for PHP 5.2
|
||||
### Note: PHP 5.2 does not allow includes and comes in XML format,
|
||||
### we must therefore copy the file to its main file /usr/local/etc/php-fpm.conf
|
||||
###
|
||||
copy_fpm_5_2_conf_file() {
|
||||
local fpm_src="${1}"
|
||||
local fpm_dst="/usr/local/etc/php-fpm.conf"
|
||||
local debug="${2}"
|
||||
|
||||
if [ -f "${fpm_src}" ]; then
|
||||
log "info" "PHP-FPM.conf (PHP 5.2): php-fpm.xml -> ${fpm_dst}" "${debug}"
|
||||
run "cp ${fpm_src} ${fpm_dst}" "${debug}"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
############################################################
|
||||
# Sanity Checks
|
||||
############################################################
|
||||
|
||||
if ! command -v find >/dev/null 2>&1; then
|
||||
echo "find not found, but required."
|
||||
exit 1
|
||||
fi
|
||||
if ! command -v basename >/dev/null 2>&1; then
|
||||
echo "basename not found, but required."
|
||||
exit 1
|
||||
fi
|
||||
47
Dockerfiles/prod/data/docker-entrypoint.d/37-fix-php-5.3-env-vars.sh
Executable file
47
Dockerfiles/prod/data/docker-entrypoint.d/37-fix-php-5.3-env-vars.sh
Executable file
@@ -0,0 +1,47 @@
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# PHP FPM 5.2 and PHP-FPM 5.3 do not allow to pass through environment variables
|
||||
# This is a hacky shell script to create:
|
||||
# env[NAME]='VALUE' entries for PHP FPM config out of all current env vars
|
||||
|
||||
|
||||
# Check if an environment variable is valid
|
||||
# for PHP-FPM config and if yes return it
|
||||
_get_env_php_fpm() {
|
||||
local name="${1}"
|
||||
local env=
|
||||
|
||||
# Not set
|
||||
if ! printenv "${name}" >/dev/null 2>&1; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
# Empty variables are not supported by PHP-FPM config syntax
|
||||
env="$( printenv "${name}" )"
|
||||
if [ -z "${env}" ]; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
# Values containing a = are not supported by PHP-FPM config syntax
|
||||
if echo "${env}" | grep -q '='; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
echo "${env}"
|
||||
}
|
||||
|
||||
# Write all valid environment variables to a PHP-FPM config
|
||||
set_env_php_fpm() {
|
||||
local config="${1}"
|
||||
|
||||
# Clear file
|
||||
echo "[www]" > "${config}"
|
||||
|
||||
# Append env variables
|
||||
for name in $(printenv | awk -F'=' '{print $1}'); do
|
||||
|
||||
if _get_env_php_fpm "${name}" >/dev/null 2>&1; then
|
||||
echo "env[${name}]='$( _get_env_php_fpm "${name}" )'" >> "${config}"
|
||||
fi
|
||||
done
|
||||
}
|
||||
51
Dockerfiles/prod/data/docker-entrypoint.d/38-enable-modules.sh
Executable file
51
Dockerfiles/prod/data/docker-entrypoint.d/38-enable-modules.sh
Executable file
@@ -0,0 +1,51 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
set -u
|
||||
set -o pipefail
|
||||
|
||||
|
||||
############################################################
|
||||
# Functions
|
||||
############################################################
|
||||
|
||||
###
|
||||
### Enable PHP Modules
|
||||
###
|
||||
enable_modules() {
|
||||
local mod_varname="${1}"
|
||||
local debug="${2}"
|
||||
local cfg_path="/usr/local/etc/php/conf.d"
|
||||
local mod_path=
|
||||
mod_path="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )"
|
||||
|
||||
|
||||
if ! env_set "${mod_varname}"; then
|
||||
log "info" "\$${mod_varname} not set. Not enabling any PHP modules." "${debug}"
|
||||
else
|
||||
mods="$( env_get "${mod_varname}" )"
|
||||
|
||||
if [ -z "${mods}" ]; then
|
||||
log "info" "\$${mod_varname} set, but empty. Not enabling any PHP modules." "${debug}"
|
||||
else
|
||||
log "info" "Enabling the following PHP modules: ${mods}" "${debug}"
|
||||
fi
|
||||
|
||||
while read -r mod; do
|
||||
mod="$( echo "${mod}" | xargs )" # trim
|
||||
|
||||
# Does the module exist?
|
||||
if [ -f "${mod_path}/${mod}.so" ]; then
|
||||
# Exceptions to load speficially
|
||||
if [ "${mod}" = "ioncube" ]; then
|
||||
run "echo 'zend_extension=${mod_path}/ioncube.so' > '${cfg_path}/docker-ext-php-ext-ioncube.ini'" "${debug}"
|
||||
# Generic Load
|
||||
else
|
||||
run "docker-php-ext-enable ${mod} || true" "${debug}"
|
||||
fi
|
||||
else
|
||||
log "warn" "Enabling PHP Module: '${mod}' does not exist" "${debug}"
|
||||
fi
|
||||
done <<< "$( echo "${mods}" | tr ',' '\n' )"
|
||||
fi
|
||||
}
|
||||
47
Dockerfiles/prod/data/docker-entrypoint.d/39-disable-modules.sh
Executable file
47
Dockerfiles/prod/data/docker-entrypoint.d/39-disable-modules.sh
Executable file
@@ -0,0 +1,47 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
set -u
|
||||
set -o pipefail
|
||||
|
||||
|
||||
############################################################
|
||||
# Functions
|
||||
############################################################
|
||||
|
||||
###
|
||||
### Disable PHP Modules
|
||||
###
|
||||
disable_modules() {
|
||||
local mod_varname="${1}"
|
||||
local debug="${2}"
|
||||
local cfg_path="/usr/local/etc/php/conf.d"
|
||||
|
||||
if ! env_set "${mod_varname}"; then
|
||||
log "info" "\$${mod_varname} not set. Not disabling any PHP modules." "${debug}"
|
||||
else
|
||||
mods="$( env_get "${mod_varname}" )"
|
||||
|
||||
if [ -z "${mods}" ]; then
|
||||
log "info" "\$${mod_varname} set, but empty. Not disabling any PHP modules." "${debug}"
|
||||
else
|
||||
log "info" "Disabling the following PHP modules: ${mods}" "${debug}"
|
||||
fi
|
||||
|
||||
while read -r mod; do
|
||||
mod="$( echo "${mod}" | xargs )" # trim
|
||||
|
||||
# Find all config files that enable that module
|
||||
files="$( grep -Er "^(zend_)?extension.*(=|/)${mod}\.so" "${cfg_path}" || true )"
|
||||
|
||||
if [ -n "${files}" ]; then
|
||||
while read -r f; do
|
||||
# Get filename
|
||||
f="$( echo "${f}" | awk -F':' '{ print $1 }' )"
|
||||
# Remove file
|
||||
run "rm ${f}" "${debug}"
|
||||
done <<< "${files}"
|
||||
fi
|
||||
done <<< "$( echo "${mods}" | tr ',' '\n' )"
|
||||
fi
|
||||
}
|
||||
@@ -21,11 +21,15 @@ CONFIG_DIR="/docker-entrypoint.d"
|
||||
# php.ini.d directory
|
||||
PHP_INI_DIR="/usr/local/etc/php/conf.d"
|
||||
|
||||
# php-fpm conf.d directory
|
||||
PHP_FPM_DIR="/usr/local/etc/php-fpm.d"
|
||||
|
||||
# This is the log file for any mail related functions
|
||||
PHP_MAIL_LOG="/var/log/mail.log"
|
||||
|
||||
# This file holds error and access log definitions
|
||||
FPM_CONF_LOGFILE="/usr/local/etc/php-fpm.d/logfiles.conf"
|
||||
PHP_FPM_CONF_LOGFILE="${PHP_FPM_DIR}/zzz-entrypoint-logfiles.conf"
|
||||
PHP_INI_CONF_LOGFILE="${PHP_INI_DIR}/zzz-entrypoint-logfiles.ini"
|
||||
|
||||
# PHP-FPM log dir
|
||||
FPM_LOG_DIR="/var/log/php"
|
||||
@@ -33,6 +37,9 @@ FPM_LOG_DIR="/var/log/php"
|
||||
# Custom ini dir (to be copied to actual ini dir)
|
||||
PHP_CUST_INI_DIR="/etc/php-custom.d"
|
||||
|
||||
# Custom PHP-FPM dir (to be copied to actual FPM conf dir)
|
||||
PHP_CUST_FPM_DIR="/etc/php-fpm-custom.d"
|
||||
|
||||
# Supervisord config directory
|
||||
SUPERVISOR_CONFD="/etc/supervisor/conf.d"
|
||||
|
||||
@@ -72,13 +79,22 @@ set_gid "NEW_GID" "${MY_GROUP}" "/home/${MY_USER}" "${DEBUG_LEVEL}"
|
||||
set_timezone "TIMEZONE" "${PHP_INI_DIR}" "${DEBUG_LEVEL}"
|
||||
|
||||
|
||||
###
|
||||
### PHP-FPM 5.2 and PHP-FPM 5.3 Env variables fix
|
||||
###
|
||||
if php -v 2>/dev/null | grep -Eoq '^PHP[[:space:]]5\.(2|3)'; then
|
||||
set_env_php_fpm "/usr/local/etc/php-fpm.d/env.conf"
|
||||
fi
|
||||
|
||||
|
||||
###
|
||||
### Set Logging
|
||||
###
|
||||
set_docker_logs \
|
||||
"DOCKER_LOGS" \
|
||||
"${FPM_LOG_DIR}" \
|
||||
"${FPM_CONF_LOGFILE}" \
|
||||
"${PHP_FPM_CONF_LOGFILE}" \
|
||||
"${PHP_INI_CONF_LOGFILE}" \
|
||||
"${MY_USER}" \
|
||||
"${MY_GROUP}" \
|
||||
"${DEBUG_LEVEL}"
|
||||
@@ -140,6 +156,28 @@ supervisor_add_service "php-fpm" "/usr/local/sbin/php-fpm" "${SUPERVISOR_CONFD}
|
||||
copy_ini_files "${PHP_CUST_INI_DIR}" "${PHP_INI_DIR}" "${DEBUG_LEVEL}"
|
||||
|
||||
|
||||
###
|
||||
### Copy custom PHP-FPM *.conf files
|
||||
###
|
||||
if [ "${PHP_VERSION}" = "5.2" ]; then
|
||||
copy_fpm_5_2_conf_file "${PHP_CUST_FPM_DIR}/php-fpm.xml" "${DEBUG_LEVEL}"
|
||||
else
|
||||
copy_fpm_files "${PHP_CUST_FPM_DIR}" "${PHP_FPM_DIR}" "${DEBUG_LEVEL}"
|
||||
fi
|
||||
|
||||
|
||||
###
|
||||
### Enable PHP Modules
|
||||
###
|
||||
enable_modules "ENABLE_MODULES" "${DEBUG_LEVEL}"
|
||||
|
||||
|
||||
###
|
||||
### Disable PHP Modules
|
||||
###
|
||||
disable_modules "DISABLE_MODULES" "${DEBUG_LEVEL}"
|
||||
|
||||
|
||||
###
|
||||
### Startup
|
||||
###
|
||||
|
||||
307
Dockerfiles/work/Dockerfile-5.2
Normal file
307
Dockerfiles/work/Dockerfile-5.2
Normal file
@@ -0,0 +1,307 @@
|
||||
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-work.j2 instead.
|
||||
FROM devilbox/php-fpm:5.2-prod
|
||||
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
||||
|
||||
|
||||
###
|
||||
### Labels
|
||||
###
|
||||
LABEL \
|
||||
name="cytopia's PHP-FPM 5.2 Image" \
|
||||
image="devilbox/php-fpm" \
|
||||
tag="5.2-work" \
|
||||
vendor="devilbox" \
|
||||
license="MIT"
|
||||
|
||||
|
||||
###
|
||||
### Envs
|
||||
###
|
||||
ENV BASH_PROFILE=".bashrc"
|
||||
|
||||
|
||||
###
|
||||
### Install Tools
|
||||
###
|
||||
RUN set -x \
|
||||
&& apt-get update \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
dirmngr \
|
||||
gnupg \
|
||||
&& echo "deb http://ftp.debian.org/debian jessie-backports main" > /etc/apt/sources.list.d/backports.list \
|
||||
&& apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv A1715D88E1DF1F24 \
|
||||
&& echo "deb http://ppa.launchpad.net/git-core/ppa/ubuntu wily main" > /etc/apt/sources.list.d/git.list \
|
||||
&& apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5 \
|
||||
&& echo "deb http://repo.mongodb.org/apt/debian jessie/mongodb-org/3.6 main" > /etc/apt/sources.list.d/mongo.list \
|
||||
&& curl -q "https://deb.nodesource.com/gpgkey/nodesource.gpg.key" 2>/dev/null | apt-key add - \
|
||||
&& echo "deb http://deb.nodesource.com/node_8.x jessie main" > /etc/apt/sources.list.d/node.list \
|
||||
&& curl -q https://www.postgresql.org/media/keys/ACCC4CF8.asc 2>/dev/null | apt-key add - \
|
||||
&& echo "deb http://apt.postgresql.org/pub/repos/apt/ jessie-pgdg main" > /etc/apt/sources.list.d/pgsql.list \
|
||||
&& curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
|
||||
&& echo "deb http://dl.yarnpkg.com/debian/ stable main" > /etc/apt/sources.list.d/yarn.list \
|
||||
&& apt-get update \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
ack-grep \
|
||||
aspell \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
dnsutils \
|
||||
dos2unix \
|
||||
file \
|
||||
gcc \
|
||||
git \
|
||||
git-flow \
|
||||
git-svn \
|
||||
hostname \
|
||||
htop \
|
||||
imagemagick \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
moreutils \
|
||||
mysql-client \
|
||||
nano \
|
||||
net-tools \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
silversearcher-ag \
|
||||
subversion \
|
||||
sudo \
|
||||
tig \
|
||||
vim \
|
||||
w3m \
|
||||
wget \
|
||||
whois \
|
||||
xz-utils \
|
||||
yarn \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
|
||||
RUN set -x \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
&& git checkout $(git describe --abbrev=0 --tags) \
|
||||
&& ./configure --prefix=/usr/local \
|
||||
&& make install \
|
||||
&& cd / \
|
||||
&& rm -rf /usr/local/src/awesome-ci \
|
||||
\
|
||||
&& gem install mixlib-config -v 2.2.4 \
|
||||
&& gem install mdl \
|
||||
&& gem install scss_lint \
|
||||
&& npm install -g eslint \
|
||||
&& npm install -g jsonlint \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# gitflow
|
||||
&& git clone git://github.com/petervanderdoes/gitflow.git /tmp/gitflow \
|
||||
&& cd /tmp/gitflow \
|
||||
&& make install \
|
||||
&& cd / && rm -rf /tmp/gitflow \
|
||||
\
|
||||
# grunt
|
||||
&& npm install -g grunt grunt-cli \
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||
'echo "PATH=/usr/local/src/linuxbrew/bin:/usr/local/src/linuxbrew/sbin:/usr/bin:/usr/sbin:/bin:/sbin" >> /home/devilbox/${v}' \
|
||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||
'echo "export MANPATH=/usr/local/src/linuxbrew/share/man:${MANPATH}" >> /home/devilbox/${v}' \
|
||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||
'echo "export INFOPATH=/usr/local/src/linuxbrew/share/man:${INFOPATH}" >> /home/devilbox/${v}' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew update' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew config' \
|
||||
\
|
||||
# mhsendmail
|
||||
&& wget https://github.com/mailhog/mhsendmail/releases/download/v0.2.0/mhsendmail_linux_amd64 \
|
||||
&& chmod +x mhsendmail_linux_amd64 \
|
||||
&& mv mhsendmail_linux_amd64 /usr/local/bin/mhsendmai \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
&& git checkout $(git describe --abbrev=0 --tags) \
|
||||
&& cp /usr/local/src/mysqldump-secure/bin/mysqldump-secure /usr/local/bin \
|
||||
&& cp /usr/local/src/mysqldump-secure/etc/mysqldump-secure.conf /etc \
|
||||
&& cp /usr/local/src/mysqldump-secure/etc/mysqldump-secure.cnf /etc \
|
||||
&& touch /var/log/mysqldump-secure.log \
|
||||
&& chown ${MY_USER}:${MY_GROUP} /etc/mysqldump-secure.* \
|
||||
&& chown ${MY_USER}:${MY_GROUP} /var/log/mysqldump-secure.log \
|
||||
&& chmod 0400 /etc/mysqldump-secure.conf \
|
||||
&& chmod 0400 /etc/mysqldump-secure.cnf \
|
||||
&& chmod 0644 /var/log/mysqldump-secure.log \
|
||||
&& sed -i'' 's/^COMPRESS_ARG=.*/COMPRESS_ARG="-9 -c"/g' /etc/mysqldump-secure.conf \
|
||||
&& sed -i'' 's/^DUMP_DIR=.*/DUMP_DIR="\/shared\/backups\/mysql"/g' /etc/mysqldump-secure.conf \
|
||||
&& sed -i'' 's/^DUMP_DIR_CHMOD=.*/DUMP_DIR_CHMOD="0755"/g' /etc/mysqldump-secure.conf \
|
||||
&& sed -i'' 's/^DUMP_FILE_CHMOD=.*/DUMP_FILE_CHMOD="0644"/g' /etc/mysqldump-secure.conf \
|
||||
&& sed -i'' 's/^LOG_CHMOD=.*/LOG_CHMOD="0644"/g' /etc/mysqldump-secure.conf \
|
||||
&& sed -i'' 's/^NAGIOS_LOG=.*/NAGIOS_LOG=0/g' /etc/mysqldump-secure.conf \
|
||||
&& cd / \
|
||||
&& rm -rf /usr/local/src/mysqldump-secure \
|
||||
\
|
||||
# phpcs
|
||||
&& curl -qL https://github.com/squizlabs/PHP_CodeSniffer/releases/download/2.9.0/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcs \
|
||||
\
|
||||
# phpcbf
|
||||
&& curl -qL https://github.com/squizlabs/PHP_CodeSniffer/releases/download/2.9.0/phpcbf.phar > /usr/local/bin/phpcbf 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcbf \
|
||||
\
|
||||
# sass
|
||||
&& gem install sass \
|
||||
# webpack
|
||||
&& npm install -g webpack webpack-cli \
|
||||
# yamllint
|
||||
&& apt update && apt install --no-install-recommends --no-install-suggests -y libpython-dev python-setuptools libyaml-dev \
|
||||
&& pip install yamllint \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps libpython-dev python-setuptools libyaml-dev && rm -rf /var/lib/apt/lists/* \
|
||||
# cleanup
|
||||
&& rm -rf /home/${MY_USER}/.*json \
|
||||
&& rm -rf /home/${MY_USER}/.cache \
|
||||
&& rm -rf /home/${MY_USER}/.composer \
|
||||
&& rm -rf /home/${MY_USER}/.config \
|
||||
&& rm -rf /home/${MY_USER}/.drush \
|
||||
&& rm -rf /home/${MY_USER}/.gem \
|
||||
&& rm -rf /home/${MY_USER}/.npm \
|
||||
&& rm -rf /home/${MY_USER}/.subversion \
|
||||
\
|
||||
&& rm -rf /root/.*json \
|
||||
&& rm -rf /root/.cache \
|
||||
&& rm -rf /root/.composer \
|
||||
&& rm -rf /root/.config \
|
||||
&& rm -rf /root/.drush \
|
||||
&& rm -rf /root/.gem \
|
||||
&& rm -rf /root/.npm \
|
||||
&& rm -rf /root/.subversion \
|
||||
\
|
||||
&& rm -rf /tmp/* \
|
||||
\
|
||||
&& true
|
||||
|
||||
|
||||
###
|
||||
### Configure Bash
|
||||
###
|
||||
RUN \
|
||||
{ \
|
||||
echo "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||
echo "export PATH"; \
|
||||
echo ". /etc/bash-devilbox"; \
|
||||
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||
echo " if [ -r \"\${f}\" ]; then"; \
|
||||
echo " . \"\${f}\""; \
|
||||
echo " fi"; \
|
||||
echo " done"; \
|
||||
echo " unset f"; \
|
||||
echo "fi"; \
|
||||
} | tee -a /home/${MY_USER}/${BASH_PROFILE} /root/${BASH_PROFILE} \
|
||||
&& chown ${MY_USER}:${MY_GROUP} /home/${MY_USER}/${BASH_PROFILE}
|
||||
|
||||
|
||||
###
|
||||
### Verify
|
||||
###
|
||||
RUN set -x \
|
||||
&& php -v | grep -oE 'PHP\s[.0-9]+' | grep -oE '[.0-9]+' | grep '^5.2' \
|
||||
&& /usr/local/sbin/php-fpm --test \
|
||||
&& PHP_ERROR="$( php -v 2>&1 1>/dev/null )" \
|
||||
&& if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi
|
||||
|
||||
RUN set -x \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
&& jsonlint --version | grep -E '[.0-9]+' \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \
|
||||
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||
&& phpcs --version | grep -E 'version [.0-9]+' \
|
||||
&& phpcbf --version | grep -E 'version [.0-9]+' \
|
||||
&& sass --version | grep -E '[.0-9]+' \
|
||||
&& webpack --version | grep -E '[.0-9]+' \
|
||||
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
|
||||
&& true
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-5.2.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.2.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/bashrc-devilbox.d
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /shared/backups
|
||||
VOLUME /var/log/php
|
||||
VOLUME /var/mail
|
||||
|
||||
|
||||
###
|
||||
### Ports
|
||||
###
|
||||
EXPOSE 9000
|
||||
|
||||
|
||||
###
|
||||
### Where to start inside the container
|
||||
###
|
||||
WORKDIR /shared/httpd
|
||||
|
||||
|
||||
###
|
||||
### Entrypoint
|
||||
###
|
||||
ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||
351
Dockerfiles/work/Dockerfile-5.3
Normal file
351
Dockerfiles/work/Dockerfile-5.3
Normal file
@@ -0,0 +1,351 @@
|
||||
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-work.j2 instead.
|
||||
FROM devilbox/php-fpm:5.3-prod
|
||||
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
||||
|
||||
|
||||
###
|
||||
### Labels
|
||||
###
|
||||
LABEL \
|
||||
name="cytopia's PHP-FPM 5.3 Image" \
|
||||
image="devilbox/php-fpm" \
|
||||
tag="5.3-work" \
|
||||
vendor="devilbox" \
|
||||
license="MIT"
|
||||
|
||||
|
||||
###
|
||||
### Envs
|
||||
###
|
||||
ENV BASH_PROFILE=".bashrc"
|
||||
|
||||
|
||||
###
|
||||
### Install Tools
|
||||
###
|
||||
RUN set -x \
|
||||
&& apt-get update \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
dirmngr \
|
||||
gnupg \
|
||||
&& echo "deb http://ftp.debian.org/debian jessie-backports main" > /etc/apt/sources.list.d/backports.list \
|
||||
&& apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv A1715D88E1DF1F24 \
|
||||
&& echo "deb http://ppa.launchpad.net/git-core/ppa/ubuntu wily main" > /etc/apt/sources.list.d/git.list \
|
||||
&& apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5 \
|
||||
&& echo "deb http://repo.mongodb.org/apt/debian jessie/mongodb-org/3.6 main" > /etc/apt/sources.list.d/mongo.list \
|
||||
&& curl -q "https://deb.nodesource.com/gpgkey/nodesource.gpg.key" 2>/dev/null | apt-key add - \
|
||||
&& echo "deb http://deb.nodesource.com/node_8.x jessie main" > /etc/apt/sources.list.d/node.list \
|
||||
&& curl -q https://www.postgresql.org/media/keys/ACCC4CF8.asc 2>/dev/null | apt-key add - \
|
||||
&& echo "deb http://apt.postgresql.org/pub/repos/apt/ jessie-pgdg main" > /etc/apt/sources.list.d/pgsql.list \
|
||||
&& curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
|
||||
&& echo "deb http://dl.yarnpkg.com/debian/ stable main" > /etc/apt/sources.list.d/yarn.list \
|
||||
&& apt-get update \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
ack-grep \
|
||||
aspell \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
dnsutils \
|
||||
dos2unix \
|
||||
file \
|
||||
gcc \
|
||||
git \
|
||||
git-flow \
|
||||
git-svn \
|
||||
hostname \
|
||||
htop \
|
||||
imagemagick \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
moreutils \
|
||||
mysql-client \
|
||||
nano \
|
||||
net-tools \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
silversearcher-ag \
|
||||
subversion \
|
||||
sudo \
|
||||
tig \
|
||||
vim \
|
||||
w3m \
|
||||
wget \
|
||||
whois \
|
||||
xz-utils \
|
||||
yarn \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
&& git checkout $(git describe --abbrev=0 --tags) \
|
||||
&& ./configure --prefix=/usr/local \
|
||||
&& make install \
|
||||
&& cd / \
|
||||
&& rm -rf /usr/local/src/awesome-ci \
|
||||
\
|
||||
&& gem install mixlib-config -v 2.2.4 \
|
||||
&& gem install mdl \
|
||||
&& gem install scss_lint \
|
||||
&& npm install -g eslint \
|
||||
&& npm install -g jsonlint \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
&& git checkout 7.4.0 \
|
||||
\
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush \
|
||||
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush && composer install --no-interaction --no-progress' \
|
||||
&& ln -s /usr/local/src/drush/drush /usr/local/bin/drush \
|
||||
&& rm -rf /usr/local/src/drush/.git \
|
||||
&& rm -rf /usr/local/src/drush/docs \
|
||||
&& rm -rf /usr/local/src/drush/examples \
|
||||
&& rm -rf /usr/local/src/drush/misc \
|
||||
&& rm -rf /usr/local/src/drush/tests \
|
||||
\
|
||||
# gitflow
|
||||
&& git clone git://github.com/petervanderdoes/gitflow.git /tmp/gitflow \
|
||||
&& cd /tmp/gitflow \
|
||||
&& make install \
|
||||
&& cd / && rm -rf /tmp/gitflow \
|
||||
\
|
||||
# grunt
|
||||
&& npm install -g grunt grunt-cli \
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||
'echo "PATH=/usr/local/src/linuxbrew/bin:/usr/local/src/linuxbrew/sbin:/usr/bin:/usr/sbin:/bin:/sbin" >> /home/devilbox/${v}' \
|
||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||
'echo "export MANPATH=/usr/local/src/linuxbrew/share/man:${MANPATH}" >> /home/devilbox/${v}' \
|
||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||
'echo "export INFOPATH=/usr/local/src/linuxbrew/share/man:${INFOPATH}" >> /home/devilbox/${v}' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew update' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew config' \
|
||||
\
|
||||
# mhsendmail
|
||||
&& wget https://github.com/mailhog/mhsendmail/releases/download/v0.2.0/mhsendmail_linux_amd64 \
|
||||
&& chmod +x mhsendmail_linux_amd64 \
|
||||
&& mv mhsendmail_linux_amd64 /usr/local/bin/mhsendmai \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
&& git checkout $(git describe --abbrev=0 --tags) \
|
||||
&& cp /usr/local/src/mysqldump-secure/bin/mysqldump-secure /usr/local/bin \
|
||||
&& cp /usr/local/src/mysqldump-secure/etc/mysqldump-secure.conf /etc \
|
||||
&& cp /usr/local/src/mysqldump-secure/etc/mysqldump-secure.cnf /etc \
|
||||
&& touch /var/log/mysqldump-secure.log \
|
||||
&& chown ${MY_USER}:${MY_GROUP} /etc/mysqldump-secure.* \
|
||||
&& chown ${MY_USER}:${MY_GROUP} /var/log/mysqldump-secure.log \
|
||||
&& chmod 0400 /etc/mysqldump-secure.conf \
|
||||
&& chmod 0400 /etc/mysqldump-secure.cnf \
|
||||
&& chmod 0644 /var/log/mysqldump-secure.log \
|
||||
&& sed -i'' 's/^COMPRESS_ARG=.*/COMPRESS_ARG="-9 -c"/g' /etc/mysqldump-secure.conf \
|
||||
&& sed -i'' 's/^DUMP_DIR=.*/DUMP_DIR="\/shared\/backups\/mysql"/g' /etc/mysqldump-secure.conf \
|
||||
&& sed -i'' 's/^DUMP_DIR_CHMOD=.*/DUMP_DIR_CHMOD="0755"/g' /etc/mysqldump-secure.conf \
|
||||
&& sed -i'' 's/^DUMP_FILE_CHMOD=.*/DUMP_FILE_CHMOD="0644"/g' /etc/mysqldump-secure.conf \
|
||||
&& sed -i'' 's/^LOG_CHMOD=.*/LOG_CHMOD="0644"/g' /etc/mysqldump-secure.conf \
|
||||
&& sed -i'' 's/^NAGIOS_LOG=.*/NAGIOS_LOG=0/g' /etc/mysqldump-secure.conf \
|
||||
&& cd / \
|
||||
&& rm -rf /usr/local/src/mysqldump-secure \
|
||||
\
|
||||
# phalcon
|
||||
&& git clone https://github.com/phalcon/phalcon-devtools /usr/local/src/phalcon-devtools \
|
||||
&& cd /usr/local/src/phalcon-devtools \
|
||||
&& git checkout v2.0.7 \
|
||||
\
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/phalcon-devtools \
|
||||
&& su - ${MY_USER} -c 'cd /usr/local/src/phalcon-devtools && ./phalcon.sh' \
|
||||
&& ln -s /usr/local/src/phalcon-devtools/phalcon.php /usr/local/bin/phalcon \
|
||||
&& cd / \
|
||||
&& rm -rf /usr/local/src/phalcon-devtools/.git \
|
||||
\
|
||||
# phpcs
|
||||
&& curl -qL https://github.com/squizlabs/PHP_CodeSniffer/releases/download/2.9.0/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcs \
|
||||
\
|
||||
# phpcbf
|
||||
&& curl -qL https://github.com/squizlabs/PHP_CodeSniffer/releases/download/2.9.0/phpcbf.phar > /usr/local/bin/phpcbf 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcbf \
|
||||
\
|
||||
# phpunit
|
||||
&& curl -qL https://phar.phpunit.de/phpunit-4.phar > /usr/local/bin/phpunit 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpunit \
|
||||
\
|
||||
# sass
|
||||
&& gem install sass \
|
||||
# webpack
|
||||
&& npm install -g webpack webpack-cli \
|
||||
# wpcli
|
||||
&& curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -L -o /usr/local/bin/wp \
|
||||
&& chmod +x /usr/local/bin/wp \
|
||||
# yamllint
|
||||
&& apt update && apt install --no-install-recommends --no-install-suggests -y libpython-dev python-setuptools libyaml-dev \
|
||||
&& pip install yamllint \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps libpython-dev python-setuptools libyaml-dev && rm -rf /var/lib/apt/lists/* \
|
||||
# cleanup
|
||||
&& rm -rf /home/${MY_USER}/.*json \
|
||||
&& rm -rf /home/${MY_USER}/.cache \
|
||||
&& rm -rf /home/${MY_USER}/.composer \
|
||||
&& rm -rf /home/${MY_USER}/.config \
|
||||
&& rm -rf /home/${MY_USER}/.drush \
|
||||
&& rm -rf /home/${MY_USER}/.gem \
|
||||
&& rm -rf /home/${MY_USER}/.npm \
|
||||
&& rm -rf /home/${MY_USER}/.subversion \
|
||||
\
|
||||
&& rm -rf /root/.*json \
|
||||
&& rm -rf /root/.cache \
|
||||
&& rm -rf /root/.composer \
|
||||
&& rm -rf /root/.config \
|
||||
&& rm -rf /root/.drush \
|
||||
&& rm -rf /root/.gem \
|
||||
&& rm -rf /root/.npm \
|
||||
&& rm -rf /root/.subversion \
|
||||
\
|
||||
&& rm -rf /tmp/* \
|
||||
\
|
||||
&& true
|
||||
|
||||
|
||||
###
|
||||
### Configure Bash
|
||||
###
|
||||
RUN \
|
||||
{ \
|
||||
echo "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||
echo "export PATH"; \
|
||||
echo ". /etc/bash-devilbox"; \
|
||||
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||
echo " if [ -r \"\${f}\" ]; then"; \
|
||||
echo " . \"\${f}\""; \
|
||||
echo " fi"; \
|
||||
echo " done"; \
|
||||
echo " unset f"; \
|
||||
echo "fi"; \
|
||||
} | tee -a /home/${MY_USER}/${BASH_PROFILE} /root/${BASH_PROFILE} \
|
||||
&& chown ${MY_USER}:${MY_GROUP} /home/${MY_USER}/${BASH_PROFILE}
|
||||
|
||||
|
||||
###
|
||||
### Verify
|
||||
###
|
||||
RUN set -x \
|
||||
&& php -v | grep -oE 'PHP\s[.0-9]+' | grep -oE '[.0-9]+' | grep '^5.3' \
|
||||
&& /usr/local/sbin/php-fpm --test \
|
||||
&& PHP_ERROR="$( php -v 2>&1 1>/dev/null )" \
|
||||
&& if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
&& jsonlint --version | grep -E '[.0-9]+' \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& drush --version | grep -E '[.0-9]+' \
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \
|
||||
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||
&& phalcon commands | grep -E '[.0-9]+' \
|
||||
&& phpcs --version | grep -E 'version [.0-9]+' \
|
||||
&& phpcbf --version | grep -E 'version [.0-9]+' \
|
||||
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
|
||||
&& sass --version | grep -E '[.0-9]+' \
|
||||
&& webpack --version | grep -E '[.0-9]+' \
|
||||
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
||||
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
|
||||
&& true
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-5.3.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.3.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/bashrc-devilbox.d
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /shared/backups
|
||||
VOLUME /var/log/php
|
||||
VOLUME /var/mail
|
||||
|
||||
|
||||
###
|
||||
### Ports
|
||||
###
|
||||
EXPOSE 9000
|
||||
|
||||
|
||||
###
|
||||
### Where to start inside the container
|
||||
###
|
||||
WORKDIR /shared/httpd
|
||||
|
||||
|
||||
###
|
||||
### Entrypoint
|
||||
###
|
||||
ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||
@@ -46,6 +46,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -62,6 +63,9 @@ RUN set -x \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -71,8 +75,14 @@ RUN set -x \
|
||||
net-tools \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -93,6 +103,10 @@ RUN set -x \
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
@@ -110,6 +124,10 @@ RUN set -x \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
@@ -142,6 +160,10 @@ RUN set -x \
|
||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
||||
\
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
@@ -154,6 +176,11 @@ RUN set -x \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew update' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew config' \
|
||||
\
|
||||
# mhsendmail
|
||||
&& wget https://github.com/mailhog/mhsendmail/releases/download/v0.2.0/mhsendmail_linux_amd64 \
|
||||
&& chmod +x mhsendmail_linux_amd64 \
|
||||
&& mv mhsendmail_linux_amd64 /usr/local/bin/mhsendmai \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
@@ -187,6 +214,20 @@ RUN set -x \
|
||||
&& cd / \
|
||||
&& rm -rf /usr/local/src/phalcon-devtools/.git \
|
||||
\
|
||||
# phpcs
|
||||
&& curl -q https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcs \
|
||||
\
|
||||
# phpcbf
|
||||
&& curl -q https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar > /usr/local/bin/phpcbf 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcbf \
|
||||
\
|
||||
# phpunit
|
||||
&& curl -qL https://phar.phpunit.de/phpunit-4.phar > /usr/local/bin/phpunit 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpunit \
|
||||
\
|
||||
# sass
|
||||
&& gem install sass \
|
||||
# symfony
|
||||
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
||||
&& chmod +x /usr/local/bin/symfony \
|
||||
@@ -195,6 +236,10 @@ RUN set -x \
|
||||
# wpcli
|
||||
&& curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -L -o /usr/local/bin/wp \
|
||||
&& chmod +x /usr/local/bin/wp \
|
||||
# yamllint
|
||||
&& apt update && apt install --no-install-recommends --no-install-suggests -y libpython-dev python-setuptools libyaml-dev \
|
||||
&& pip install yamllint \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps libpython-dev python-setuptools libyaml-dev && rm -rf /var/lib/apt/lists/* \
|
||||
# cleanup
|
||||
&& rm -rf /home/${MY_USER}/.*json \
|
||||
&& rm -rf /home/${MY_USER}/.cache \
|
||||
@@ -227,8 +272,8 @@ RUN \
|
||||
echo "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||
echo "export PATH"; \
|
||||
echo ". /etc/bash-devilbox"; \
|
||||
echo "if [ -d /etc/bash-custom.d/ ]; then"; \
|
||||
echo " for f in /etc/bash-custom.d/*.sh ; do"; \
|
||||
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||
echo " if [ -r \"\${f}\" ]; then"; \
|
||||
echo " . \"\${f}\""; \
|
||||
echo " fi"; \
|
||||
@@ -250,6 +295,7 @@ RUN set -x \
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
@@ -257,33 +303,45 @@ RUN set -x \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& drush --version | grep -E '[.0-9]+' \
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \
|
||||
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \
|
||||
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||
&& phalcon commands | grep -E '[.0-9]+' \
|
||||
&& phpcs --version | grep -E 'version [.0-9]+' \
|
||||
&& phpcbf --version | grep -E 'version [.0-9]+' \
|
||||
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
|
||||
&& sass --version | grep -E '[.0-9]+' \
|
||||
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||
&& webpack --version | grep -E '[.0-9]+' \
|
||||
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
||||
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
|
||||
&& true
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-5.4.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.4.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/bash-custom.d
|
||||
VOLUME /etc/bashrc-devilbox.d
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /shared/backups
|
||||
VOLUME /var/log/php
|
||||
|
||||
@@ -46,6 +46,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -62,6 +63,9 @@ RUN set -x \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -71,8 +75,14 @@ RUN set -x \
|
||||
net-tools \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -93,6 +103,10 @@ RUN set -x \
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
@@ -110,6 +124,10 @@ RUN set -x \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
@@ -145,6 +163,10 @@ RUN set -x \
|
||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
||||
\
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
@@ -157,6 +179,11 @@ RUN set -x \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew update' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew config' \
|
||||
\
|
||||
# mhsendmail
|
||||
&& wget https://github.com/mailhog/mhsendmail/releases/download/v0.2.0/mhsendmail_linux_amd64 \
|
||||
&& chmod +x mhsendmail_linux_amd64 \
|
||||
&& mv mhsendmail_linux_amd64 /usr/local/bin/mhsendmai \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
@@ -190,6 +217,24 @@ RUN set -x \
|
||||
&& cd / \
|
||||
&& rm -rf /usr/local/src/phalcon-devtools/.git \
|
||||
\
|
||||
# phpcs
|
||||
&& curl -q https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcs \
|
||||
\
|
||||
# phpcbf
|
||||
&& curl -q https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar > /usr/local/bin/phpcbf 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcbf \
|
||||
\
|
||||
# phpunit
|
||||
&& curl -qL https://phar.phpunit.de/phpunit-4.phar > /usr/local/bin/phpunit 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpunit \
|
||||
\
|
||||
# photon
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require "photoncms/installer" \
|
||||
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/photon \
|
||||
\
|
||||
# sass
|
||||
&& gem install sass \
|
||||
# symfony
|
||||
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
||||
&& chmod +x /usr/local/bin/symfony \
|
||||
@@ -198,6 +243,10 @@ RUN set -x \
|
||||
# wpcli
|
||||
&& curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -L -o /usr/local/bin/wp \
|
||||
&& chmod +x /usr/local/bin/wp \
|
||||
# yamllint
|
||||
&& apt update && apt install --no-install-recommends --no-install-suggests -y libpython-dev python-setuptools libyaml-dev \
|
||||
&& pip install yamllint \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps libpython-dev python-setuptools libyaml-dev && rm -rf /var/lib/apt/lists/* \
|
||||
# cleanup
|
||||
&& rm -rf /home/${MY_USER}/.*json \
|
||||
&& rm -rf /home/${MY_USER}/.cache \
|
||||
@@ -230,8 +279,8 @@ RUN \
|
||||
echo "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||
echo "export PATH"; \
|
||||
echo ". /etc/bash-devilbox"; \
|
||||
echo "if [ -d /etc/bash-custom.d/ ]; then"; \
|
||||
echo " for f in /etc/bash-custom.d/*.sh ; do"; \
|
||||
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||
echo " if [ -r \"\${f}\" ]; then"; \
|
||||
echo " . \"\${f}\""; \
|
||||
echo " fi"; \
|
||||
@@ -253,6 +302,7 @@ RUN set -x \
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
@@ -260,34 +310,47 @@ RUN set -x \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& drush --version | grep -E '[.0-9]+' \
|
||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \
|
||||
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \
|
||||
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||
&& phalcon commands | grep -E '[.0-9]+' \
|
||||
&& phpcs --version | grep -E 'version [.0-9]+' \
|
||||
&& phpcbf --version | grep -E 'version [.0-9]+' \
|
||||
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
|
||||
&& photon --version | grep -E 'Installer [.0-9]+' \
|
||||
&& sass --version | grep -E '[.0-9]+' \
|
||||
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||
&& webpack --version | grep -E '[.0-9]+' \
|
||||
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
||||
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
|
||||
&& true
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-5.5.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.5.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/bash-custom.d
|
||||
VOLUME /etc/bashrc-devilbox.d
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /shared/backups
|
||||
VOLUME /var/log/php
|
||||
|
||||
@@ -46,6 +46,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -62,6 +63,9 @@ RUN set -x \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -71,8 +75,14 @@ RUN set -x \
|
||||
net-tools \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -93,6 +103,10 @@ RUN set -x \
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
@@ -110,6 +124,10 @@ RUN set -x \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
@@ -145,6 +163,10 @@ RUN set -x \
|
||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
||||
\
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
@@ -157,6 +179,11 @@ RUN set -x \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew update' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew config' \
|
||||
\
|
||||
# mhsendmail
|
||||
&& wget https://github.com/mailhog/mhsendmail/releases/download/v0.2.0/mhsendmail_linux_amd64 \
|
||||
&& chmod +x mhsendmail_linux_amd64 \
|
||||
&& mv mhsendmail_linux_amd64 /usr/local/bin/mhsendmai \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
@@ -190,6 +217,24 @@ RUN set -x \
|
||||
&& cd / \
|
||||
&& rm -rf /usr/local/src/phalcon-devtools/.git \
|
||||
\
|
||||
# phpcs
|
||||
&& curl -q https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcs \
|
||||
\
|
||||
# phpcbf
|
||||
&& curl -q https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar > /usr/local/bin/phpcbf 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcbf \
|
||||
\
|
||||
# phpunit
|
||||
&& curl -qL https://phar.phpunit.de/phpunit-5.phar > /usr/local/bin/phpunit 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpunit \
|
||||
\
|
||||
# photon
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require "photoncms/installer" \
|
||||
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/photon \
|
||||
\
|
||||
# sass
|
||||
&& gem install sass \
|
||||
# symfony
|
||||
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
||||
&& chmod +x /usr/local/bin/symfony \
|
||||
@@ -198,6 +243,10 @@ RUN set -x \
|
||||
# wpcli
|
||||
&& curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -L -o /usr/local/bin/wp \
|
||||
&& chmod +x /usr/local/bin/wp \
|
||||
# yamllint
|
||||
&& apt update && apt install --no-install-recommends --no-install-suggests -y libpython-dev python-setuptools libyaml-dev \
|
||||
&& pip install yamllint \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps libpython-dev python-setuptools libyaml-dev && rm -rf /var/lib/apt/lists/* \
|
||||
# cleanup
|
||||
&& rm -rf /home/${MY_USER}/.*json \
|
||||
&& rm -rf /home/${MY_USER}/.cache \
|
||||
@@ -230,8 +279,8 @@ RUN \
|
||||
echo "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||
echo "export PATH"; \
|
||||
echo ". /etc/bash-devilbox"; \
|
||||
echo "if [ -d /etc/bash-custom.d/ ]; then"; \
|
||||
echo " for f in /etc/bash-custom.d/*.sh ; do"; \
|
||||
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||
echo " if [ -r \"\${f}\" ]; then"; \
|
||||
echo " . \"\${f}\""; \
|
||||
echo " fi"; \
|
||||
@@ -253,6 +302,7 @@ RUN set -x \
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
@@ -260,34 +310,47 @@ RUN set -x \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& drush --version | grep -E '[.0-9]+' \
|
||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \
|
||||
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \
|
||||
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||
&& phalcon commands | grep -E '[.0-9]+' \
|
||||
&& phpcs --version | grep -E 'version [.0-9]+' \
|
||||
&& phpcbf --version | grep -E 'version [.0-9]+' \
|
||||
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
|
||||
&& photon --version | grep -E 'Installer [.0-9]+' \
|
||||
&& sass --version | grep -E '[.0-9]+' \
|
||||
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||
&& webpack --version | grep -E '[.0-9]+' \
|
||||
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
||||
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
|
||||
&& true
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-5.6.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.6.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/bash-custom.d
|
||||
VOLUME /etc/bashrc-devilbox.d
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /shared/backups
|
||||
VOLUME /var/log/php
|
||||
|
||||
@@ -46,6 +46,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -62,6 +63,9 @@ RUN set -x \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -71,8 +75,14 @@ RUN set -x \
|
||||
net-tools \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -93,6 +103,10 @@ RUN set -x \
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
@@ -110,6 +124,10 @@ RUN set -x \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
@@ -145,6 +163,10 @@ RUN set -x \
|
||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
||||
\
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
@@ -157,6 +179,11 @@ RUN set -x \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew update' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew config' \
|
||||
\
|
||||
# mhsendmail
|
||||
&& wget https://github.com/mailhog/mhsendmail/releases/download/v0.2.0/mhsendmail_linux_amd64 \
|
||||
&& chmod +x mhsendmail_linux_amd64 \
|
||||
&& mv mhsendmail_linux_amd64 /usr/local/bin/mhsendmai \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
@@ -190,6 +217,24 @@ RUN set -x \
|
||||
&& cd / \
|
||||
&& rm -rf /usr/local/src/phalcon-devtools/.git \
|
||||
\
|
||||
# phpcs
|
||||
&& curl -q https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcs \
|
||||
\
|
||||
# phpcbf
|
||||
&& curl -q https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar > /usr/local/bin/phpcbf 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcbf \
|
||||
\
|
||||
# phpunit
|
||||
&& curl -qL https://phar.phpunit.de/phpunit-6.phar > /usr/local/bin/phpunit 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpunit \
|
||||
\
|
||||
# photon
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require "photoncms/installer" \
|
||||
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/photon \
|
||||
\
|
||||
# sass
|
||||
&& gem install sass \
|
||||
# symfony
|
||||
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
||||
&& chmod +x /usr/local/bin/symfony \
|
||||
@@ -198,6 +243,10 @@ RUN set -x \
|
||||
# wpcli
|
||||
&& curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -L -o /usr/local/bin/wp \
|
||||
&& chmod +x /usr/local/bin/wp \
|
||||
# yamllint
|
||||
&& apt update && apt install --no-install-recommends --no-install-suggests -y libpython-dev python-setuptools libyaml-dev \
|
||||
&& pip install yamllint \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps libpython-dev python-setuptools libyaml-dev && rm -rf /var/lib/apt/lists/* \
|
||||
# cleanup
|
||||
&& rm -rf /home/${MY_USER}/.*json \
|
||||
&& rm -rf /home/${MY_USER}/.cache \
|
||||
@@ -230,8 +279,8 @@ RUN \
|
||||
echo "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||
echo "export PATH"; \
|
||||
echo ". /etc/bash-devilbox"; \
|
||||
echo "if [ -d /etc/bash-custom.d/ ]; then"; \
|
||||
echo " for f in /etc/bash-custom.d/*.sh ; do"; \
|
||||
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||
echo " if [ -r \"\${f}\" ]; then"; \
|
||||
echo " . \"\${f}\""; \
|
||||
echo " fi"; \
|
||||
@@ -253,6 +302,7 @@ RUN set -x \
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
@@ -260,34 +310,47 @@ RUN set -x \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& drush --version | grep -E '[.0-9]+' \
|
||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \
|
||||
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \
|
||||
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||
&& phalcon commands | grep -E '[.0-9]+' \
|
||||
&& phpcs --version | grep -E 'version [.0-9]+' \
|
||||
&& phpcbf --version | grep -E 'version [.0-9]+' \
|
||||
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
|
||||
&& photon --version | grep -E 'Installer [.0-9]+' \
|
||||
&& sass --version | grep -E '[.0-9]+' \
|
||||
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||
&& webpack --version | grep -E '[.0-9]+' \
|
||||
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
||||
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
|
||||
&& true
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-7.0.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-7.0.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/bash-custom.d
|
||||
VOLUME /etc/bashrc-devilbox.d
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /shared/backups
|
||||
VOLUME /var/log/php
|
||||
|
||||
@@ -46,6 +46,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -62,6 +63,9 @@ RUN set -x \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -71,8 +75,14 @@ RUN set -x \
|
||||
net-tools \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -93,6 +103,10 @@ RUN set -x \
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
@@ -110,6 +124,10 @@ RUN set -x \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
@@ -145,6 +163,10 @@ RUN set -x \
|
||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
||||
\
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
@@ -157,6 +179,11 @@ RUN set -x \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew update' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew config' \
|
||||
\
|
||||
# mhsendmail
|
||||
&& wget https://github.com/mailhog/mhsendmail/releases/download/v0.2.0/mhsendmail_linux_amd64 \
|
||||
&& chmod +x mhsendmail_linux_amd64 \
|
||||
&& mv mhsendmail_linux_amd64 /usr/local/bin/mhsendmai \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
@@ -190,6 +217,24 @@ RUN set -x \
|
||||
&& cd / \
|
||||
&& rm -rf /usr/local/src/phalcon-devtools/.git \
|
||||
\
|
||||
# phpcs
|
||||
&& curl -q https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcs \
|
||||
\
|
||||
# phpcbf
|
||||
&& curl -q https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar > /usr/local/bin/phpcbf 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcbf \
|
||||
\
|
||||
# phpunit
|
||||
&& curl -qL https://phar.phpunit.de/phpunit-7.phar > /usr/local/bin/phpunit 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpunit \
|
||||
\
|
||||
# photon
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require "photoncms/installer" \
|
||||
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/photon \
|
||||
\
|
||||
# sass
|
||||
&& gem install sass \
|
||||
# symfony
|
||||
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
||||
&& chmod +x /usr/local/bin/symfony \
|
||||
@@ -198,6 +243,10 @@ RUN set -x \
|
||||
# wpcli
|
||||
&& curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -L -o /usr/local/bin/wp \
|
||||
&& chmod +x /usr/local/bin/wp \
|
||||
# yamllint
|
||||
&& apt update && apt install --no-install-recommends --no-install-suggests -y libpython-dev python-setuptools libyaml-dev \
|
||||
&& pip install yamllint \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps libpython-dev python-setuptools libyaml-dev && rm -rf /var/lib/apt/lists/* \
|
||||
# cleanup
|
||||
&& rm -rf /home/${MY_USER}/.*json \
|
||||
&& rm -rf /home/${MY_USER}/.cache \
|
||||
@@ -230,8 +279,8 @@ RUN \
|
||||
echo "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||
echo "export PATH"; \
|
||||
echo ". /etc/bash-devilbox"; \
|
||||
echo "if [ -d /etc/bash-custom.d/ ]; then"; \
|
||||
echo " for f in /etc/bash-custom.d/*.sh ; do"; \
|
||||
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||
echo " if [ -r \"\${f}\" ]; then"; \
|
||||
echo " . \"\${f}\""; \
|
||||
echo " fi"; \
|
||||
@@ -253,6 +302,7 @@ RUN set -x \
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
@@ -260,34 +310,47 @@ RUN set -x \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& drush --version | grep -E '[.0-9]+' \
|
||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \
|
||||
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \
|
||||
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||
&& phalcon commands | grep -E '[.0-9]+' \
|
||||
&& phpcs --version | grep -E 'version [.0-9]+' \
|
||||
&& phpcbf --version | grep -E 'version [.0-9]+' \
|
||||
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
|
||||
&& photon --version | grep -E 'Installer [.0-9]+' \
|
||||
&& sass --version | grep -E '[.0-9]+' \
|
||||
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||
&& webpack --version | grep -E '[.0-9]+' \
|
||||
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
||||
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
|
||||
&& true
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-7.1.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-7.1.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/bash-custom.d
|
||||
VOLUME /etc/bashrc-devilbox.d
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /shared/backups
|
||||
VOLUME /var/log/php
|
||||
|
||||
@@ -46,6 +46,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -62,6 +63,9 @@ RUN set -x \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -71,8 +75,14 @@ RUN set -x \
|
||||
net-tools \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -93,6 +103,10 @@ RUN set -x \
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
@@ -110,6 +124,10 @@ RUN set -x \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
@@ -145,6 +163,10 @@ RUN set -x \
|
||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
||||
\
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
@@ -157,6 +179,11 @@ RUN set -x \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew update' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew config' \
|
||||
\
|
||||
# mhsendmail
|
||||
&& wget https://github.com/mailhog/mhsendmail/releases/download/v0.2.0/mhsendmail_linux_amd64 \
|
||||
&& chmod +x mhsendmail_linux_amd64 \
|
||||
&& mv mhsendmail_linux_amd64 /usr/local/bin/mhsendmai \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
@@ -190,6 +217,24 @@ RUN set -x \
|
||||
&& cd / \
|
||||
&& rm -rf /usr/local/src/phalcon-devtools/.git \
|
||||
\
|
||||
# phpcs
|
||||
&& curl -q https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcs \
|
||||
\
|
||||
# phpcbf
|
||||
&& curl -q https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar > /usr/local/bin/phpcbf 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcbf \
|
||||
\
|
||||
# phpunit
|
||||
&& curl -qL https://phar.phpunit.de/phpunit-7.phar > /usr/local/bin/phpunit 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpunit \
|
||||
\
|
||||
# photon
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require "photoncms/installer" \
|
||||
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/photon \
|
||||
\
|
||||
# sass
|
||||
&& gem install sass \
|
||||
# symfony
|
||||
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
||||
&& chmod +x /usr/local/bin/symfony \
|
||||
@@ -198,6 +243,10 @@ RUN set -x \
|
||||
# wpcli
|
||||
&& curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -L -o /usr/local/bin/wp \
|
||||
&& chmod +x /usr/local/bin/wp \
|
||||
# yamllint
|
||||
&& apt update && apt install --no-install-recommends --no-install-suggests -y libpython-dev python-setuptools libyaml-dev \
|
||||
&& pip install yamllint \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps libpython-dev python-setuptools libyaml-dev && rm -rf /var/lib/apt/lists/* \
|
||||
# cleanup
|
||||
&& rm -rf /home/${MY_USER}/.*json \
|
||||
&& rm -rf /home/${MY_USER}/.cache \
|
||||
@@ -230,8 +279,8 @@ RUN \
|
||||
echo "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||
echo "export PATH"; \
|
||||
echo ". /etc/bash-devilbox"; \
|
||||
echo "if [ -d /etc/bash-custom.d/ ]; then"; \
|
||||
echo " for f in /etc/bash-custom.d/*.sh ; do"; \
|
||||
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||
echo " if [ -r \"\${f}\" ]; then"; \
|
||||
echo " . \"\${f}\""; \
|
||||
echo " fi"; \
|
||||
@@ -253,6 +302,7 @@ RUN set -x \
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
@@ -260,34 +310,47 @@ RUN set -x \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& drush --version | grep -E '[.0-9]+' \
|
||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \
|
||||
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \
|
||||
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||
&& phalcon commands | grep -E '[.0-9]+' \
|
||||
&& phpcs --version | grep -E 'version [.0-9]+' \
|
||||
&& phpcbf --version | grep -E 'version [.0-9]+' \
|
||||
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
|
||||
&& photon --version | grep -E 'Installer [.0-9]+' \
|
||||
&& sass --version | grep -E '[.0-9]+' \
|
||||
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||
&& webpack --version | grep -E '[.0-9]+' \
|
||||
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
||||
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
|
||||
&& true
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-7.2.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-7.2.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/bash-custom.d
|
||||
VOLUME /etc/bashrc-devilbox.d
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /shared/backups
|
||||
VOLUME /var/log/php
|
||||
|
||||
363
Dockerfiles/work/Dockerfile-7.3
Normal file
363
Dockerfiles/work/Dockerfile-7.3
Normal file
@@ -0,0 +1,363 @@
|
||||
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-work.j2 instead.
|
||||
FROM devilbox/php-fpm:7.3-prod
|
||||
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
||||
|
||||
|
||||
###
|
||||
### Labels
|
||||
###
|
||||
LABEL \
|
||||
name="cytopia's PHP-FPM 7.3 Image" \
|
||||
image="devilbox/php-fpm" \
|
||||
tag="7.3-work" \
|
||||
vendor="devilbox" \
|
||||
license="MIT"
|
||||
|
||||
|
||||
###
|
||||
### Envs
|
||||
###
|
||||
ENV BASH_PROFILE=".bashrc"
|
||||
|
||||
|
||||
###
|
||||
### Install Tools
|
||||
###
|
||||
RUN set -x \
|
||||
&& apt-get update \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
dirmngr \
|
||||
gnupg \
|
||||
&& echo "deb http://ftp.debian.org/debian jessie-backports main" > /etc/apt/sources.list.d/backports.list \
|
||||
&& apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv A1715D88E1DF1F24 \
|
||||
&& echo "deb http://ppa.launchpad.net/git-core/ppa/ubuntu artful main" > /etc/apt/sources.list.d/git.list \
|
||||
&& apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5 \
|
||||
&& echo "deb http://repo.mongodb.org/apt/debian jessie/mongodb-org/3.6 main" > /etc/apt/sources.list.d/mongo.list \
|
||||
&& curl -q "https://deb.nodesource.com/gpgkey/nodesource.gpg.key" 2>/dev/null | apt-key add - \
|
||||
&& echo "deb http://deb.nodesource.com/node_8.x stretch main" > /etc/apt/sources.list.d/node.list \
|
||||
&& curl -q https://www.postgresql.org/media/keys/ACCC4CF8.asc 2>/dev/null | apt-key add - \
|
||||
&& echo "deb http://apt.postgresql.org/pub/repos/apt/ stretch-pgdg main" > /etc/apt/sources.list.d/pgsql.list \
|
||||
&& curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
|
||||
&& echo "deb http://dl.yarnpkg.com/debian/ stable main" > /etc/apt/sources.list.d/yarn.list \
|
||||
&& apt-get update \
|
||||
&& apt-get install --no-install-recommends --no-install-suggests -y \
|
||||
ack-grep \
|
||||
aspell \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
dnsutils \
|
||||
dos2unix \
|
||||
file \
|
||||
gcc \
|
||||
git \
|
||||
git-flow \
|
||||
git-svn \
|
||||
hostname \
|
||||
htop \
|
||||
imagemagick \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
moreutils \
|
||||
mysql-client \
|
||||
nano \
|
||||
net-tools \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
silversearcher-ag \
|
||||
subversion \
|
||||
sudo \
|
||||
tig \
|
||||
vim \
|
||||
w3m \
|
||||
wget \
|
||||
whois \
|
||||
xz-utils \
|
||||
yarn \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
&& git checkout $(git describe --abbrev=0 --tags) \
|
||||
&& ./configure --prefix=/usr/local \
|
||||
&& make install \
|
||||
&& cd / \
|
||||
&& rm -rf /usr/local/src/awesome-ci \
|
||||
\
|
||||
&& gem install mixlib-config -v 2.2.4 \
|
||||
&& gem install mdl \
|
||||
&& gem install scss_lint \
|
||||
&& npm install -g eslint \
|
||||
&& npm install -g jsonlint \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
&& git checkout $(git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | tail -1 | sed 's/^.*tags\///g') \
|
||||
\
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush \
|
||||
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush && composer install --no-interaction --no-progress' \
|
||||
&& ln -s /usr/local/src/drush/drush /usr/local/bin/drush \
|
||||
&& rm -rf /usr/local/src/drush/.git \
|
||||
&& rm -rf /usr/local/src/drush/docs \
|
||||
&& rm -rf /usr/local/src/drush/examples \
|
||||
&& rm -rf /usr/local/src/drush/misc \
|
||||
&& rm -rf /usr/local/src/drush/tests \
|
||||
\
|
||||
# drupalconsole
|
||||
&& curl https://drupalconsole.com/installer -L -o /usr/local/bin/drupal \
|
||||
&& chmod +x /usr/local/bin/drupal \
|
||||
# gitflow
|
||||
&& git clone git://github.com/petervanderdoes/gitflow.git /tmp/gitflow \
|
||||
&& cd /tmp/gitflow \
|
||||
&& make install \
|
||||
&& cd / && rm -rf /tmp/gitflow \
|
||||
\
|
||||
# grunt
|
||||
&& npm install -g grunt grunt-cli \
|
||||
# laravel
|
||||
&& git clone https://github.com/laravel/installer /usr/local/src/laravel-installer \
|
||||
&& cd /usr/local/src/laravel-installer \
|
||||
&& git checkout $(git describe --abbrev=0 --tags) \
|
||||
\
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \
|
||||
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && composer install' \
|
||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
||||
\
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||
'echo "PATH=/usr/local/src/linuxbrew/bin:/usr/local/src/linuxbrew/sbin:/usr/bin:/usr/sbin:/bin:/sbin" >> /home/devilbox/${v}' \
|
||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||
'echo "export MANPATH=/usr/local/src/linuxbrew/share/man:${MANPATH}" >> /home/devilbox/${v}' \
|
||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||
'echo "export INFOPATH=/usr/local/src/linuxbrew/share/man:${INFOPATH}" >> /home/devilbox/${v}' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew update' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew config' \
|
||||
\
|
||||
# mhsendmail
|
||||
&& wget https://github.com/mailhog/mhsendmail/releases/download/v0.2.0/mhsendmail_linux_amd64 \
|
||||
&& chmod +x mhsendmail_linux_amd64 \
|
||||
&& mv mhsendmail_linux_amd64 /usr/local/bin/mhsendmai \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
&& git checkout $(git describe --abbrev=0 --tags) \
|
||||
&& cp /usr/local/src/mysqldump-secure/bin/mysqldump-secure /usr/local/bin \
|
||||
&& cp /usr/local/src/mysqldump-secure/etc/mysqldump-secure.conf /etc \
|
||||
&& cp /usr/local/src/mysqldump-secure/etc/mysqldump-secure.cnf /etc \
|
||||
&& touch /var/log/mysqldump-secure.log \
|
||||
&& chown ${MY_USER}:${MY_GROUP} /etc/mysqldump-secure.* \
|
||||
&& chown ${MY_USER}:${MY_GROUP} /var/log/mysqldump-secure.log \
|
||||
&& chmod 0400 /etc/mysqldump-secure.conf \
|
||||
&& chmod 0400 /etc/mysqldump-secure.cnf \
|
||||
&& chmod 0644 /var/log/mysqldump-secure.log \
|
||||
&& sed -i'' 's/^COMPRESS_ARG=.*/COMPRESS_ARG="-9 -c"/g' /etc/mysqldump-secure.conf \
|
||||
&& sed -i'' 's/^DUMP_DIR=.*/DUMP_DIR="\/shared\/backups\/mysql"/g' /etc/mysqldump-secure.conf \
|
||||
&& sed -i'' 's/^DUMP_DIR_CHMOD=.*/DUMP_DIR_CHMOD="0755"/g' /etc/mysqldump-secure.conf \
|
||||
&& sed -i'' 's/^DUMP_FILE_CHMOD=.*/DUMP_FILE_CHMOD="0644"/g' /etc/mysqldump-secure.conf \
|
||||
&& sed -i'' 's/^LOG_CHMOD=.*/LOG_CHMOD="0644"/g' /etc/mysqldump-secure.conf \
|
||||
&& sed -i'' 's/^NAGIOS_LOG=.*/NAGIOS_LOG=0/g' /etc/mysqldump-secure.conf \
|
||||
&& cd / \
|
||||
&& rm -rf /usr/local/src/mysqldump-secure \
|
||||
\
|
||||
# phpcs
|
||||
&& curl -q https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcs \
|
||||
\
|
||||
# phpcbf
|
||||
&& curl -q https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar > /usr/local/bin/phpcbf 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcbf \
|
||||
\
|
||||
# phpunit
|
||||
&& curl -qL https://phar.phpunit.de/phpunit-7.phar > /usr/local/bin/phpunit 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpunit \
|
||||
\
|
||||
# photon
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require "photoncms/installer" \
|
||||
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/photon \
|
||||
\
|
||||
# sass
|
||||
&& gem install sass \
|
||||
# symfony
|
||||
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
||||
&& chmod +x /usr/local/bin/symfony \
|
||||
# webpack
|
||||
&& npm install -g webpack webpack-cli \
|
||||
# wpcli
|
||||
&& curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -L -o /usr/local/bin/wp \
|
||||
&& chmod +x /usr/local/bin/wp \
|
||||
# yamllint
|
||||
&& apt update && apt install --no-install-recommends --no-install-suggests -y libpython-dev python-setuptools libyaml-dev \
|
||||
&& pip install yamllint \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps libpython-dev python-setuptools libyaml-dev && rm -rf /var/lib/apt/lists/* \
|
||||
# cleanup
|
||||
&& rm -rf /home/${MY_USER}/.*json \
|
||||
&& rm -rf /home/${MY_USER}/.cache \
|
||||
&& rm -rf /home/${MY_USER}/.composer \
|
||||
&& rm -rf /home/${MY_USER}/.config \
|
||||
&& rm -rf /home/${MY_USER}/.drush \
|
||||
&& rm -rf /home/${MY_USER}/.gem \
|
||||
&& rm -rf /home/${MY_USER}/.npm \
|
||||
&& rm -rf /home/${MY_USER}/.subversion \
|
||||
\
|
||||
&& rm -rf /root/.*json \
|
||||
&& rm -rf /root/.cache \
|
||||
&& rm -rf /root/.composer \
|
||||
&& rm -rf /root/.config \
|
||||
&& rm -rf /root/.drush \
|
||||
&& rm -rf /root/.gem \
|
||||
&& rm -rf /root/.npm \
|
||||
&& rm -rf /root/.subversion \
|
||||
\
|
||||
&& rm -rf /tmp/* \
|
||||
\
|
||||
&& true
|
||||
|
||||
|
||||
###
|
||||
### Configure Bash
|
||||
###
|
||||
RUN \
|
||||
{ \
|
||||
echo "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||
echo "export PATH"; \
|
||||
echo ". /etc/bash-devilbox"; \
|
||||
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||
echo " if [ -r \"\${f}\" ]; then"; \
|
||||
echo " . \"\${f}\""; \
|
||||
echo " fi"; \
|
||||
echo " done"; \
|
||||
echo " unset f"; \
|
||||
echo "fi"; \
|
||||
} | tee -a /home/${MY_USER}/${BASH_PROFILE} /root/${BASH_PROFILE} \
|
||||
&& chown ${MY_USER}:${MY_GROUP} /home/${MY_USER}/${BASH_PROFILE}
|
||||
|
||||
|
||||
###
|
||||
### Verify
|
||||
###
|
||||
RUN set -x \
|
||||
&& php -v | grep -oE 'PHP\s[.0-9]+' | grep -oE '[.0-9]+' | grep '^7.3' \
|
||||
&& /usr/local/sbin/php-fpm --test \
|
||||
&& PHP_ERROR="$( php -v 2>&1 1>/dev/null )" \
|
||||
&& if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
&& jsonlint --version | grep -E '[.0-9]+' \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& drush --version | grep -E '[.0-9]+' \
|
||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \
|
||||
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \
|
||||
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||
&& phpcs --version | grep -E 'version [.0-9]+' \
|
||||
&& phpcbf --version | grep -E 'version [.0-9]+' \
|
||||
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
|
||||
&& photon --version | grep -E 'Installer [.0-9]+' \
|
||||
&& sass --version | grep -E '[.0-9]+' \
|
||||
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||
&& webpack --version | grep -E '[.0-9]+' \
|
||||
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
||||
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
|
||||
&& true
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-7.3.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-7.3.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/bashrc-devilbox.d
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /shared/backups
|
||||
VOLUME /var/log/php
|
||||
VOLUME /var/mail
|
||||
|
||||
|
||||
###
|
||||
### Ports
|
||||
###
|
||||
EXPOSE 9000
|
||||
|
||||
|
||||
###
|
||||
### Where to start inside the container
|
||||
###
|
||||
WORKDIR /shared/httpd
|
||||
|
||||
|
||||
###
|
||||
### Entrypoint
|
||||
###
|
||||
ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||
@@ -15,7 +15,15 @@ alias ll='ls -alp --color=always --group-directories-first'
|
||||
alias ..='cd ..'
|
||||
|
||||
# Nice PS1
|
||||
PS1="\[\e[0;31m\]$(whoami)\[\e[0m\]@\[\e[0;36m\]php-$(php -v|head -1|grep -Eo '[0-9.]+'|head -1)\[\e[0m\] in \[\e[0;34m\]\w \[\e[0m\]\$ "
|
||||
_clr_usr='\[\e[0;31m\]'
|
||||
_clr_ver='\[\e[0;36m\]'
|
||||
_clr_dir='\[\e[0;34m\]'
|
||||
_clr_off='\[\e[0m\]'
|
||||
PS1_PHP="$( php -v 2>/dev/null | grep -Eo '^PHP\s([-_.a-z0-9])+' )"
|
||||
PS1_PHP="${PS1_PHP//PHP[[:space:]]}"
|
||||
PS1_USR="$( whoami )"
|
||||
PS1="${_clr_usr}${PS1_USR}${_clr_off}@${_clr_ver}php-${PS1_PHP}${_clr_off} in ${_clr_dir}\w${_clr_off} \$ "
|
||||
|
||||
|
||||
# Show Intro
|
||||
echo
|
||||
@@ -34,7 +42,7 @@ echo " | Available Tools | Project website |"
|
||||
echo " |------------------|------------------------------|"
|
||||
echo " | awesome-ci | gh: cytopia/awesome-ci |"
|
||||
echo " | composer | https://getcomposer.org |"
|
||||
echo " | druapl-console | https://drupalconsole.com |"
|
||||
echo " | drupal-console | https://drupalconsole.com |"
|
||||
echo " | drush | http://www.drush.org |"
|
||||
echo " | eslint | https://eslint.org |"
|
||||
echo " | git | https://git-scm.com |"
|
||||
@@ -45,7 +53,7 @@ echo " | node | https://nodejs.org |"
|
||||
echo " | npm | https://www.npmjs.com |"
|
||||
echo " | phalcon-devtools | gh: phalcon/phalcon-devtools |"
|
||||
echo " | symfony installer| gh: symfony/symfony-installer|"
|
||||
echo " | webpack | ghL webpack/webpack |"
|
||||
echo " | webpack | gh: webpack/webpack |"
|
||||
echo " | wpcli | https://wp-cli.org |"
|
||||
echo
|
||||
echo
|
||||
|
||||
26
Dockerfiles/work/data/docker-entrypoint.d/41-update-ca-certificates.sh
Executable file
26
Dockerfiles/work/data/docker-entrypoint.d/41-update-ca-certificates.sh
Executable file
@@ -0,0 +1,26 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
set -u
|
||||
set -o pipefail
|
||||
|
||||
|
||||
############################################################
|
||||
# Functions
|
||||
############################################################
|
||||
|
||||
###
|
||||
### Include certificates/CAs into own system
|
||||
###
|
||||
update_ca_certificates() {
|
||||
local dir="${1}"
|
||||
local debug="${2}"
|
||||
|
||||
if [ -d "${dir}" ]; then
|
||||
for cert in $( find "${dir}" -name \*.crt ); do
|
||||
name="$( basename "${cert}" )"
|
||||
run "cp ${cert} /usr/local/share/ca-certificates/devilbox-${name}" "${debug}"
|
||||
done
|
||||
fi
|
||||
run "update-ca-certificates" "${debug}"
|
||||
}
|
||||
@@ -21,11 +21,15 @@ CONFIG_DIR="/docker-entrypoint.d"
|
||||
# php.ini.d directory
|
||||
PHP_INI_DIR="/usr/local/etc/php/conf.d"
|
||||
|
||||
# php-fpm conf.d directory
|
||||
PHP_FPM_DIR="/usr/local/etc/php-fpm.d"
|
||||
|
||||
# This is the log file for any mail related functions
|
||||
PHP_MAIL_LOG="/var/log/mail.log"
|
||||
|
||||
# This file holds error and access log definitions
|
||||
FPM_CONF_LOGFILE="/usr/local/etc/php-fpm.d/logfiles.conf"
|
||||
PHP_FPM_CONF_LOGFILE="${PHP_FPM_DIR}/zzz-entrypoint-logfiles.conf"
|
||||
PHP_INI_CONF_LOGFILE="${PHP_INI_DIR}/zzz-entrypoint-logfiles.ini"
|
||||
|
||||
# PHP-FPM log dir
|
||||
FPM_LOG_DIR="/var/log/php"
|
||||
@@ -33,6 +37,9 @@ FPM_LOG_DIR="/var/log/php"
|
||||
# Custom ini dir (to be copied to actual ini dir)
|
||||
PHP_CUST_INI_DIR="/etc/php-custom.d"
|
||||
|
||||
# Custom PHP-FPM dir (to be copied to actual FPM conf dir)
|
||||
PHP_CUST_FPM_DIR="/etc/php-fpm-custom.d"
|
||||
|
||||
# Supervisord config directory
|
||||
SUPERVISOR_CONFD="/etc/supervisor/conf.d"
|
||||
|
||||
@@ -72,13 +79,22 @@ set_gid "NEW_GID" "${MY_GROUP}" "/home/${MY_USER}" "${DEBUG_LEVEL}"
|
||||
set_timezone "TIMEZONE" "${PHP_INI_DIR}" "${DEBUG_LEVEL}"
|
||||
|
||||
|
||||
###
|
||||
### PHP-FPM 5.2 and PHP-FPM 5.3 Env variables fix
|
||||
###
|
||||
if php -v 2>/dev/null | grep -Eoq '^PHP[[:space:]]5\.(2|3)'; then
|
||||
set_env_php_fpm "/usr/local/etc/php-fpm.d/env.conf"
|
||||
fi
|
||||
|
||||
|
||||
###
|
||||
### Set Logging
|
||||
###
|
||||
set_docker_logs \
|
||||
"DOCKER_LOGS" \
|
||||
"${FPM_LOG_DIR}" \
|
||||
"${FPM_CONF_LOGFILE}" \
|
||||
"${PHP_FPM_CONF_LOGFILE}" \
|
||||
"${PHP_INI_CONF_LOGFILE}" \
|
||||
"${MY_USER}" \
|
||||
"${MY_GROUP}" \
|
||||
"${DEBUG_LEVEL}"
|
||||
@@ -140,6 +156,28 @@ supervisor_add_service "php-fpm" "/usr/local/sbin/php-fpm" "${SUPERVISOR_CONFD}
|
||||
copy_ini_files "${PHP_CUST_INI_DIR}" "${PHP_INI_DIR}" "${DEBUG_LEVEL}"
|
||||
|
||||
|
||||
###
|
||||
### Copy custom PHP-FPM *.conf files
|
||||
###
|
||||
if [ "${PHP_VERSION}" = "5.2" ]; then
|
||||
copy_fpm_5_2_conf_file "${PHP_CUST_FPM_DIR}/php-fpm.xml" "${DEBUG_LEVEL}"
|
||||
else
|
||||
copy_fpm_files "${PHP_CUST_FPM_DIR}" "${PHP_FPM_DIR}" "${DEBUG_LEVEL}"
|
||||
fi
|
||||
|
||||
|
||||
###
|
||||
### Enable PHP Modules
|
||||
###
|
||||
enable_modules "ENABLE_MODULES" "${DEBUG_LEVEL}"
|
||||
|
||||
|
||||
###
|
||||
### Disable PHP Modules
|
||||
###
|
||||
disable_modules "DISABLE_MODULES" "${DEBUG_LEVEL}"
|
||||
|
||||
|
||||
###
|
||||
### mysqldump-secure
|
||||
###
|
||||
@@ -162,6 +200,12 @@ run "chmod 0755 /shared/backups" "${DEBUG_LEVEL}"
|
||||
run "chmod 0755 /shared/httpd" "${DEBUG_LEVEL}"
|
||||
|
||||
|
||||
###
|
||||
### Update ca-certificates
|
||||
###
|
||||
update_ca_certificates "/ca" "${DEBUG_LEVEL}"
|
||||
|
||||
|
||||
###
|
||||
### Startup
|
||||
###
|
||||
|
||||
160
Dockerfiles/work/data/php-fpm.conf/php-fpm-5.2.conf
Normal file
160
Dockerfiles/work/data/php-fpm.conf/php-fpm-5.2.conf
Normal file
@@ -0,0 +1,160 @@
|
||||
<?xml version="1.0" ?>
|
||||
<configuration>
|
||||
|
||||
All relative paths in this config are relative to php's install prefix
|
||||
|
||||
<section name="global_options">
|
||||
Pid file
|
||||
<value name="pid_file">/var/run/php-fpm.pid</value>
|
||||
|
||||
Error log file
|
||||
<value name="error_log">/proc/self/fd/2</value>
|
||||
|
||||
Log level
|
||||
<value name="log_level">notice</value>
|
||||
|
||||
When this amount of php processes exited with SIGSEGV or SIGBUS ...
|
||||
<value name="emergency_restart_threshold">10</value>
|
||||
|
||||
... in a less than this interval of time, a graceful restart will be initiated.
|
||||
Useful to work around accidental curruptions in accelerator's shared memory.
|
||||
<value name="emergency_restart_interval">1m</value>
|
||||
|
||||
Time limit on waiting child's reaction on signals from master
|
||||
<value name="process_control_timeout">5s</value>
|
||||
|
||||
Set to 'no' to debug fpm
|
||||
<value name="daemonize">no</value>
|
||||
</section>
|
||||
|
||||
<workers>
|
||||
|
||||
<section name="pool">
|
||||
|
||||
Name of pool. Used in logs and stats.
|
||||
<value name="name">www</value>
|
||||
|
||||
Address to accept fastcgi requests on.
|
||||
Valid syntax is 'ip.ad.re.ss:port' or just 'port' or '/path/to/unix/socket'
|
||||
<value name="listen_address">0.0.0.0:9000</value>
|
||||
|
||||
<value name="listen_options">
|
||||
Set listen(2) backlog
|
||||
<value name="backlog">1024</value>
|
||||
Set permissions for unix socket, if one used.
|
||||
In Linux read/write permissions must be set in order to allow connections from web server.
|
||||
Many BSD-derrived systems allow connections regardless of permissions.
|
||||
<value name="owner"></value>
|
||||
<value name="group"></value>
|
||||
<value name="mode">0666</value>
|
||||
</value>
|
||||
|
||||
Additional php.ini defines, specific to this pool of workers.
|
||||
<value name="php_defines">
|
||||
<value name="error_reporting">-1</value>
|
||||
<value name="xmlrpc_errors">0</value>
|
||||
<value name="report_memleaks">1</value>
|
||||
<value name="display_errors">1</value>
|
||||
<value name="display_startup_errors">1</value>
|
||||
<value name="track_errors">1</value>
|
||||
<value name="log_errors">1</value>
|
||||
<value name="html_errors">1</value>
|
||||
</value>
|
||||
|
||||
Unix user of processes
|
||||
<value name="user">devilbox</value>
|
||||
|
||||
Unix group of processes
|
||||
<value name="group">devilbox</value>
|
||||
|
||||
Process manager settings
|
||||
<value name="pm">
|
||||
|
||||
Sets style of controling worker process count.
|
||||
Valid values are 'static' and 'apache-like'
|
||||
<value name="style">apache-like</value>
|
||||
|
||||
Sets the limit on the number of simultaneous requests that will be served.
|
||||
Equivalent to Apache MaxClients directive.
|
||||
Equivalent to PHP_FCGI_CHILDREN environment in original php.fcgi
|
||||
Used with any pm_style.
|
||||
<!--<value name="max_children">50</value>-->
|
||||
<value name="max_children">5</value>
|
||||
|
||||
Settings group for 'apache-like' pm style
|
||||
<value name="apache_like">
|
||||
Sets the number of server processes created on startup.
|
||||
Used only when 'apache-like' pm_style is selected
|
||||
<!--<value name="StartServers">4</value>-->
|
||||
<value name="StartServers">3</value>
|
||||
|
||||
Sets the desired minimum number of idle server processes.
|
||||
Used only when 'apache-like' pm_style is selected
|
||||
<!--<value name="MinSpareServers">2</value>-->
|
||||
<value name="MinSpareServers">2</value>
|
||||
|
||||
Sets the desired maximum number of idle server processes.
|
||||
Used only when 'apache-like' pm_style is selected
|
||||
<!--<value name="MaxSpareServers">6</value>-->
|
||||
<value name="MaxSpareServers">4</value>
|
||||
</value>
|
||||
|
||||
</value>
|
||||
|
||||
The timeout (in seconds) for serving a single request after which the worker process will be terminated
|
||||
Should be used when 'max_execution_time' ini option does not stop script execution for some reason
|
||||
'0s' means 'off'
|
||||
<value name="request_terminate_timeout">120s</value>
|
||||
|
||||
The timeout (in seconds) for serving of single request after which a php backtrace will be dumped to slow.log file
|
||||
'0s' means 'off'
|
||||
<value name="request_slowlog_timeout">0s</value>
|
||||
|
||||
The log file for slow requests
|
||||
<value name="slowlog">/proc/self/fd/2</value>
|
||||
|
||||
Set open file desc rlimit
|
||||
<value name="rlimit_files">1024</value>
|
||||
|
||||
Set max core size rlimit
|
||||
<value name="rlimit_core">0</value>
|
||||
|
||||
Chroot to this directory at the start, absolute path
|
||||
<value name="chroot"></value>
|
||||
|
||||
Chdir to this directory at the start, absolute path
|
||||
<value name="chdir"></value>
|
||||
|
||||
Redirect workers' stdout and stderr into main error log.
|
||||
If not set, they will be redirected to /dev/null, according to FastCGI specs
|
||||
<value name="catch_workers_output">yes</value>
|
||||
|
||||
How much requests each process should execute before respawn.
|
||||
Useful to work around memory leaks in 3rd party libraries.
|
||||
For endless request processing please specify 0
|
||||
Equivalent to PHP_FCGI_MAX_REQUESTS
|
||||
<value name="max_requests">500</value>
|
||||
|
||||
Comma separated list of ipv4 addresses of FastCGI clients that allowed to connect.
|
||||
Equivalent to FCGI_WEB_SERVER_ADDRS environment in original php.fcgi (5.2.2+)
|
||||
Makes sense only with AF_INET listening socket.
|
||||
<!-- <value name="allowed_clients">127.0.0.1</value> -->
|
||||
|
||||
Pass environment variables like LD_LIBRARY_PATH
|
||||
All $VARIABLEs are taken from current environment
|
||||
<value name="environment">
|
||||
<value name="HOSTNAME">$HOSTNAME</value>
|
||||
<value name="PATH">/usr/local/bin:/usr/bin:/bin</value>
|
||||
<value name="TMP">/tmp</value>
|
||||
<value name="TMPDIR">/tmp</value>
|
||||
<value name="TEMP">/tmp</value>
|
||||
<value name="OSTYPE">$OSTYPE</value>
|
||||
<value name="MACHTYPE">$MACHTYPE</value>
|
||||
<value name="MALLOC_CHECK_">2</value>
|
||||
</value>
|
||||
|
||||
</section>
|
||||
|
||||
</workers>
|
||||
|
||||
</configuration>
|
||||
132
Dockerfiles/work/data/php-fpm.conf/php-fpm-5.3.conf
Normal file
132
Dockerfiles/work/data/php-fpm.conf/php-fpm-5.3.conf
Normal file
@@ -0,0 +1,132 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
134
Dockerfiles/work/data/php-fpm.conf/php-fpm-5.4.conf
Normal file
134
Dockerfiles/work/data/php-fpm.conf/php-fpm-5.4.conf
Normal file
@@ -0,0 +1,134 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
134
Dockerfiles/work/data/php-fpm.conf/php-fpm-5.5.conf
Normal file
134
Dockerfiles/work/data/php-fpm.conf/php-fpm-5.5.conf
Normal file
@@ -0,0 +1,134 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
134
Dockerfiles/work/data/php-fpm.conf/php-fpm-5.6.conf
Normal file
134
Dockerfiles/work/data/php-fpm.conf/php-fpm-5.6.conf
Normal file
@@ -0,0 +1,134 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
134
Dockerfiles/work/data/php-fpm.conf/php-fpm-7.0.conf
Normal file
134
Dockerfiles/work/data/php-fpm.conf/php-fpm-7.0.conf
Normal file
@@ -0,0 +1,134 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
134
Dockerfiles/work/data/php-fpm.conf/php-fpm-7.1.conf
Normal file
134
Dockerfiles/work/data/php-fpm.conf/php-fpm-7.1.conf
Normal file
@@ -0,0 +1,134 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
134
Dockerfiles/work/data/php-fpm.conf/php-fpm-7.2.conf
Normal file
134
Dockerfiles/work/data/php-fpm.conf/php-fpm-7.2.conf
Normal file
@@ -0,0 +1,134 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
134
Dockerfiles/work/data/php-fpm.conf/php-fpm-7.3.conf
Normal file
134
Dockerfiles/work/data/php-fpm.conf/php-fpm-7.3.conf
Normal file
@@ -0,0 +1,134 @@
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = 120s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = /proc/self/fd/2
|
||||
log_level = notice
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = /proc/self/fd/2
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = 1024
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = ondemand
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = 50
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = 4
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = 2
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = 6
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = 500
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = 10s
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
; Keep env variables set by docker
|
||||
clear_env = no
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = yes
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = devilbox
|
||||
group = devilbox
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = 9000
|
||||
49
Dockerfiles/work/data/php-ini.d/php-5.2.ini
Normal file
49
Dockerfiles/work/data/php-ini.d/php-5.2.ini
Normal file
@@ -0,0 +1,49 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 5.2-work
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL | E_NOTICE | E_STRICT | E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
track_errors = On
|
||||
log_errors = On
|
||||
html_errors = On
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
49
Dockerfiles/work/data/php-ini.d/php-5.3.ini
Normal file
49
Dockerfiles/work/data/php-ini.d/php-5.3.ini
Normal file
@@ -0,0 +1,49 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 5.3-work
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL | E_NOTICE | E_STRICT | E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
track_errors = On
|
||||
log_errors = On
|
||||
html_errors = On
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
50
Dockerfiles/work/data/php-ini.d/php-5.4.ini
Normal file
50
Dockerfiles/work/data/php-ini.d/php-5.4.ini
Normal file
@@ -0,0 +1,50 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 5.4-work
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_vars = 8000
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL | E_NOTICE | E_STRICT | E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
track_errors = On
|
||||
log_errors = On
|
||||
html_errors = On
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
50
Dockerfiles/work/data/php-ini.d/php-5.5.ini
Normal file
50
Dockerfiles/work/data/php-ini.d/php-5.5.ini
Normal file
@@ -0,0 +1,50 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 5.5-work
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_vars = 8000
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL | E_NOTICE | E_STRICT | E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
track_errors = On
|
||||
log_errors = On
|
||||
html_errors = On
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
50
Dockerfiles/work/data/php-ini.d/php-5.6.ini
Normal file
50
Dockerfiles/work/data/php-ini.d/php-5.6.ini
Normal file
@@ -0,0 +1,50 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 5.6-work
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_vars = 8000
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL | E_NOTICE | E_STRICT | E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
track_errors = On
|
||||
log_errors = On
|
||||
html_errors = On
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
50
Dockerfiles/work/data/php-ini.d/php-7.0.ini
Normal file
50
Dockerfiles/work/data/php-ini.d/php-7.0.ini
Normal file
@@ -0,0 +1,50 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 7.0-work
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_vars = 8000
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL | E_NOTICE | E_STRICT | E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
track_errors = On
|
||||
log_errors = On
|
||||
html_errors = On
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
50
Dockerfiles/work/data/php-ini.d/php-7.1.ini
Normal file
50
Dockerfiles/work/data/php-ini.d/php-7.1.ini
Normal file
@@ -0,0 +1,50 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 7.1-work
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_vars = 8000
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL | E_NOTICE | E_STRICT | E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
track_errors = On
|
||||
log_errors = On
|
||||
html_errors = On
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
49
Dockerfiles/work/data/php-ini.d/php-7.2.ini
Normal file
49
Dockerfiles/work/data/php-ini.d/php-7.2.ini
Normal file
@@ -0,0 +1,49 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 7.2-work
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_vars = 8000
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL | E_NOTICE | E_STRICT | E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
log_errors = On
|
||||
html_errors = On
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
49
Dockerfiles/work/data/php-ini.d/php-7.3.ini
Normal file
49
Dockerfiles/work/data/php-ini.d/php-7.3.ini
Normal file
@@ -0,0 +1,49 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for 7.3-work
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = 512M
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = 120
|
||||
max_input_time = 120
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = 72M
|
||||
upload_max_filesize = 64M
|
||||
max_file_uploads = 20
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = EGPCS
|
||||
max_input_vars = 8000
|
||||
max_input_nesting_level = 64
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = E_ALL | E_NOTICE | E_STRICT | E_DEPRECATED
|
||||
xmlrpc_errors = Off
|
||||
report_memleaks = On
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
log_errors = On
|
||||
html_errors = On
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = Off
|
||||
xdebug.profiler_enable = Off
|
||||
xdebug.remote_enable = Off
|
||||
xdebug.remote_autostart = Off
|
||||
128
Makefile
128
Makefile
@@ -27,61 +27,85 @@ help:
|
||||
@printf "%s\n" "make rebuild-prod: Rebuild all prod images"
|
||||
@printf "%s\n" "make rebuild-work: Rebuild all work images"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make build-base-52: Build PHP 5.2 base image"
|
||||
@printf "%s\n" "make build-base-53: Build PHP 5.3 base image"
|
||||
@printf "%s\n" "make build-base-54: Build PHP 5.4 base image"
|
||||
@printf "%s\n" "make build-base-55: Build PHP 5.5 base image"
|
||||
@printf "%s\n" "make build-base-56: Build PHP 5.6 base image"
|
||||
@printf "%s\n" "make build-base-70: Build PHP 7.0 base image"
|
||||
@printf "%s\n" "make build-base-71: Build PHP 7.1 base image"
|
||||
@printf "%s\n" "make build-base-72: Build PHP 7.2 base image"
|
||||
@printf "%s\n" "make build-base-73: Build PHP 7.3 base image"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make build-mods-52: Build PHP 5.2 mods image"
|
||||
@printf "%s\n" "make build-mods-53: Build PHP 5.3 mods image"
|
||||
@printf "%s\n" "make build-mods-54: Build PHP 5.4 mods image"
|
||||
@printf "%s\n" "make build-mods-55: Build PHP 5.5 mods image"
|
||||
@printf "%s\n" "make build-mods-56: Build PHP 5.6 mods image"
|
||||
@printf "%s\n" "make build-mods-70: Build PHP 7.0 mods image"
|
||||
@printf "%s\n" "make build-mods-71: Build PHP 7.1 mods image"
|
||||
@printf "%s\n" "make build-mods-72: Build PHP 7.2 mods image"
|
||||
@printf "%s\n" "make build-mods-73: Build PHP 7.3 mods image"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make build-prod-52: Build PHP 5.2 prod image"
|
||||
@printf "%s\n" "make build-prod-53: Build PHP 5.3 prod image"
|
||||
@printf "%s\n" "make build-prod-54: Build PHP 5.4 prod image"
|
||||
@printf "%s\n" "make build-prod-55: Build PHP 5.5 prod image"
|
||||
@printf "%s\n" "make build-prod-56: Build PHP 5.6 prod image"
|
||||
@printf "%s\n" "make build-prod-70: Build PHP 7.0 prod image"
|
||||
@printf "%s\n" "make build-prod-71: Build PHP 7.1 prod image"
|
||||
@printf "%s\n" "make build-prod-72: Build PHP 7.2 prod image"
|
||||
@printf "%s\n" "make build-prod-73: Build PHP 7.3 prod image"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make build-work-52: Build PHP 5.2 work image"
|
||||
@printf "%s\n" "make build-work-53: Build PHP 5.3 work image"
|
||||
@printf "%s\n" "make build-work-54: Build PHP 5.4 work image"
|
||||
@printf "%s\n" "make build-work-55: Build PHP 5.5 work image"
|
||||
@printf "%s\n" "make build-work-56: Build PHP 5.6 work image"
|
||||
@printf "%s\n" "make build-work-70: Build PHP 7.0 work image"
|
||||
@printf "%s\n" "make build-work-71: Build PHP 7.1 work image"
|
||||
@printf "%s\n" "make build-work-72: Build PHP 7.2 work image"
|
||||
@printf "%s\n" "make build-work-73: Build PHP 7.3 work image"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make rebuild-base-52: Build PHP 5.2 base image"
|
||||
@printf "%s\n" "make rebuild-base-53: Build PHP 5.3 base image"
|
||||
@printf "%s\n" "make rebuild-base-54: Build PHP 5.4 base image"
|
||||
@printf "%s\n" "make rebuild-base-55: Build PHP 5.5 base image"
|
||||
@printf "%s\n" "make rebuild-base-56: Build PHP 5.6 base image"
|
||||
@printf "%s\n" "make rebuild-base-70: Build PHP 7.0 base image"
|
||||
@printf "%s\n" "make rebuild-base-71: Build PHP 7.1 base image"
|
||||
@printf "%s\n" "make rebuild-base-72: Build PHP 7.2 base image"
|
||||
@printf "%s\n" "make rebuild-base-73: Build PHP 7.3 base image"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make rebuild-mods-52: Build PHP 5.2 mods image"
|
||||
@printf "%s\n" "make rebuild-mods-53: Build PHP 5.3 mods image"
|
||||
@printf "%s\n" "make rebuild-mods-54: Build PHP 5.4 mods image"
|
||||
@printf "%s\n" "make rebuild-mods-55: Build PHP 5.5 mods image"
|
||||
@printf "%s\n" "make rebuild-mods-56: Build PHP 5.6 mods image"
|
||||
@printf "%s\n" "make rebuild-mods-70: Build PHP 7.0 mods image"
|
||||
@printf "%s\n" "make rebuild-mods-71: Build PHP 7.1 mods image"
|
||||
@printf "%s\n" "make rebuild-mods-72: Build PHP 7.2 mods image"
|
||||
@printf "%s\n" "make rebuild-mods-73: Build PHP 7.3 mods image"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make rebuild-prod-52: Build PHP 5.2 prod image"
|
||||
@printf "%s\n" "make rebuild-prod-53: Build PHP 5.3 prod image"
|
||||
@printf "%s\n" "make rebuild-prod-54: Build PHP 5.4 prod image"
|
||||
@printf "%s\n" "make rebuild-prod-55: Build PHP 5.5 prod image"
|
||||
@printf "%s\n" "make rebuild-prod-56: Build PHP 5.6 prod image"
|
||||
@printf "%s\n" "make rebuild-prod-70: Build PHP 7.0 prod image"
|
||||
@printf "%s\n" "make rebuild-prod-71: Build PHP 7.1 prod image"
|
||||
@printf "%s\n" "make rebuild-prod-72: Build PHP 7.2 prod image"
|
||||
@printf "%s\n" "make rebuild-prod-73: Build PHP 7.3 prod image"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make rebuild-work-52: Build PHP 5.2 work image"
|
||||
@printf "%s\n" "make rebuild-work-53: Build PHP 5.3 work image"
|
||||
@printf "%s\n" "make rebuild-work-54: Build PHP 5.4 work image"
|
||||
@printf "%s\n" "make rebuild-work-55: Build PHP 5.5 work image"
|
||||
@printf "%s\n" "make rebuild-work-56: Build PHP 5.6 work image"
|
||||
@printf "%s\n" "make rebuild-work-70: Build PHP 7.0 work image"
|
||||
@printf "%s\n" "make rebuild-work-71: Build PHP 7.1 work image"
|
||||
@printf "%s\n" "make rebuild-work-72: Build PHP 7.2 work image"
|
||||
@printf "%s\n" "make rebuild-work-73: Build PHP 7.3 work image"
|
||||
|
||||
|
||||
|
||||
@@ -117,21 +141,25 @@ rebuild-all: rebuild-base rebuild-mods rebuild-prod rebuild-work
|
||||
###
|
||||
### Build categories
|
||||
###
|
||||
build-base: build-base-54 build-base-55 build-base-56 build-base-70 build-base-71 build-base-72
|
||||
build-mods: build-mods-54 build-mods-55 build-mods-56 build-mods-70 build-mods-71 build-mods-72
|
||||
build-prod: build-prod-54 build-prod-55 build-prod-56 build-prod-70 build-prod-71 build-prod-72
|
||||
build-work: build-work-54 build-work-55 build-work-56 build-work-70 build-work-71 build-work-72
|
||||
build-base: build-base-52 build-base-53 build-base-54 build-base-55 build-base-56 build-base-70 build-base-71 build-base-72 build-base-73
|
||||
build-mods: build-mods-52 build-mods-53 build-mods-54 build-mods-55 build-mods-56 build-mods-70 build-mods-71 build-mods-72 build-mods-73
|
||||
build-prod: build-prod-52 build-prod-53 build-prod-54 build-prod-55 build-prod-56 build-prod-70 build-prod-71 build-prod-72 build-prod-73
|
||||
build-work: build-work-52 build-work-53 build-work-54 build-work-55 build-work-56 build-work-70 build-work-71 build-work-72 build-work-73
|
||||
|
||||
rebuild-base: rebuild-base-54 rebuild-base-55 rebuild-base-56 rebuild-base-70 rebuild-base-71 rebuild-base-72
|
||||
rebuild-mods: rebuild-mods-54 rebuild-mods-55 rebuild-mods-56 rebuild-mods-70 rebuild-mods-71 rebuild-mods-72
|
||||
rebuild-prod: rebuild-prod-54 rebuild-prod-55 rebuild-prod-56 rebuild-prod-70 rebuild-prod-71 rebuild-prod-72
|
||||
rebuild-work: rebuild-work-54 rebuild-work-55 rebuild-work-56 rebuild-work-70 rebuild-work-71 rebuild-work-72
|
||||
rebuild-base: rebuild-base-52 rebuild-base-53 rebuild-base-54 rebuild-base-55 rebuild-base-56 rebuild-base-70 rebuild-base-71 rebuild-base-72 rebuild-base-73
|
||||
rebuild-mods: rebuild-mods-52 rebuild-mods-53 rebuild-mods-54 rebuild-mods-55 rebuild-mods-56 rebuild-mods-70 rebuild-mods-71 rebuild-mods-72 rebuild-mods-73
|
||||
rebuild-prod: rebuild-prod-52 rebuild-prod-53 rebuild-prod-54 rebuild-prod-55 rebuild-prod-56 rebuild-prod-70 rebuild-prod-71 rebuild-prod-72 rebuild-prod-73
|
||||
rebuild-work: rebuild-work-52 rebuild-work-53 rebuild-work-54 rebuild-work-55 rebuild-work-56 rebuild-work-70 rebuild-work-71 rebuild-work-72 rebuild-work-73
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Build separately
|
||||
###
|
||||
build-base-52: pull-from-52
|
||||
docker build -t devilbox/php-fpm:5.2-base -f $(location)/base/Dockerfile-5.2 $(location)/base
|
||||
build-base-53: pull-from-53
|
||||
docker build -t devilbox/php-fpm:5.3-base -f $(location)/base/Dockerfile-5.3 $(location)/base
|
||||
build-base-54: pull-from-54
|
||||
docker build -t devilbox/php-fpm:5.4-base -f $(location)/base/Dockerfile-5.4 $(location)/base
|
||||
build-base-55: pull-from-55
|
||||
@@ -144,7 +172,13 @@ build-base-71: pull-from-71
|
||||
docker build -t devilbox/php-fpm:7.1-base -f $(location)/base/Dockerfile-7.1 $(location)/base
|
||||
build-base-72: pull-from-72
|
||||
docker build -t devilbox/php-fpm:7.2-base -f $(location)/base/Dockerfile-7.2 $(location)/base
|
||||
build-base-73: pull-from-73
|
||||
docker build -t devilbox/php-fpm:7.3-base -f $(location)/base/Dockerfile-7.3 $(location)/base
|
||||
|
||||
build-mods-52:
|
||||
docker build -t devilbox/php-fpm:5.2-mods -f $(location)/mods/Dockerfile-5.2 $(location)/mods
|
||||
build-mods-53:
|
||||
docker build -t devilbox/php-fpm:5.3-mods -f $(location)/mods/Dockerfile-5.3 $(location)/mods
|
||||
build-mods-54:
|
||||
docker build -t devilbox/php-fpm:5.4-mods -f $(location)/mods/Dockerfile-5.4 $(location)/mods
|
||||
build-mods-55:
|
||||
@@ -157,7 +191,13 @@ build-mods-71:
|
||||
docker build -t devilbox/php-fpm:7.1-mods -f $(location)/mods/Dockerfile-7.1 $(location)/mods
|
||||
build-mods-72:
|
||||
docker build -t devilbox/php-fpm:7.2-mods -f $(location)/mods/Dockerfile-7.2 $(location)/mods
|
||||
build-mods-73:
|
||||
docker build -t devilbox/php-fpm:7.3-mods -f $(location)/mods/Dockerfile-7.3 $(location)/mods
|
||||
|
||||
build-prod-52:
|
||||
docker build -t devilbox/php-fpm:5.2-prod -f $(location)/prod/Dockerfile-5.2 $(location)/prod
|
||||
build-prod-53:
|
||||
docker build -t devilbox/php-fpm:5.3-prod -f $(location)/prod/Dockerfile-5.3 $(location)/prod
|
||||
build-prod-54:
|
||||
docker build -t devilbox/php-fpm:5.4-prod -f $(location)/prod/Dockerfile-5.4 $(location)/prod
|
||||
build-prod-55:
|
||||
@@ -170,7 +210,13 @@ build-prod-71:
|
||||
docker build -t devilbox/php-fpm:7.1-prod -f $(location)/prod/Dockerfile-7.1 $(location)/prod
|
||||
build-prod-72:
|
||||
docker build -t devilbox/php-fpm:7.2-prod -f $(location)/prod/Dockerfile-7.2 $(location)/prod
|
||||
build-prod-73:
|
||||
docker build -t devilbox/php-fpm:7.3-prod -f $(location)/prod/Dockerfile-7.3 $(location)/prod
|
||||
|
||||
build-work-52:
|
||||
docker build -t devilbox/php-fpm:5.2-work -f $(location)/work/Dockerfile-5.2 $(location)/work
|
||||
build-work-53:
|
||||
docker build -t devilbox/php-fpm:5.3-work -f $(location)/work/Dockerfile-5.3 $(location)/work
|
||||
build-work-54:
|
||||
docker build -t devilbox/php-fpm:5.4-work -f $(location)/work/Dockerfile-5.4 $(location)/work
|
||||
build-work-55:
|
||||
@@ -183,12 +229,18 @@ build-work-71:
|
||||
docker build -t devilbox/php-fpm:7.1-work -f $(location)/work/Dockerfile-7.1 $(location)/work
|
||||
build-work-72:
|
||||
docker build -t devilbox/php-fpm:7.2-work -f $(location)/work/Dockerfile-7.2 $(location)/work
|
||||
build-work-73:
|
||||
docker build -t devilbox/php-fpm:7.3-work -f $(location)/work/Dockerfile-7.3 $(location)/work
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Rebuild separately
|
||||
###
|
||||
rebuild-base-52: pull-from-52
|
||||
docker build --no-cache -t devilbox/php-fpm:5.2-base -f $(location)/base/Dockerfile-5.2 $(location)/base
|
||||
rebuild-base-53: pull-from-53
|
||||
docker build --no-cache -t devilbox/php-fpm:5.3-base -f $(location)/base/Dockerfile-5.3 $(location)/base
|
||||
rebuild-base-54: pull-from-54
|
||||
docker build --no-cache -t devilbox/php-fpm:5.4-base -f $(location)/base/Dockerfile-5.4 $(location)/base
|
||||
rebuild-base-55: pull-from-55
|
||||
@@ -201,7 +253,13 @@ rebuild-base-71: pull-from-71
|
||||
docker build --no-cache -t devilbox/php-fpm:7.1-base -f $(location)/base/Dockerfile-7.1 $(location)/base
|
||||
rebuild-base-72: pull-from-72
|
||||
docker build --no-cache -t devilbox/php-fpm:7.2-base -f $(location)/base/Dockerfile-7.2 $(location)/base
|
||||
rebuild-base-73: pull-from-73
|
||||
docker build --no-cache -t devilbox/php-fpm:7.3-base -f $(location)/base/Dockerfile-7.3 $(location)/base
|
||||
|
||||
rebuild-mods-52:
|
||||
docker build --no-cache -t devilbox/php-fpm:5.2-mods -f $(location)/mods/Dockerfile-5.2 $(location)/mods
|
||||
rebuild-mods-53:
|
||||
docker build --no-cache -t devilbox/php-fpm:5.3-mods -f $(location)/mods/Dockerfile-5.3 $(location)/mods
|
||||
rebuild-mods-54:
|
||||
docker build --no-cache -t devilbox/php-fpm:5.4-mods -f $(location)/mods/Dockerfile-5.4 $(location)/mods
|
||||
rebuild-mods-55:
|
||||
@@ -214,7 +272,13 @@ rebuild-mods-71:
|
||||
docker build --no-cache -t devilbox/php-fpm:7.1-mods -f $(location)/mods/Dockerfile-7.1 $(location)/mods
|
||||
rebuild-mods-72:
|
||||
docker build --no-cache -t devilbox/php-fpm:7.2-mods -f $(location)/mods/Dockerfile-7.2 $(location)/mods
|
||||
rebuild-mods-73:
|
||||
docker build --no-cache -t devilbox/php-fpm:7.3-mods -f $(location)/mods/Dockerfile-7.3 $(location)/mods
|
||||
|
||||
rebuild-prod-52:
|
||||
docker build --no-cache -t devilbox/php-fpm:5.2-prod -f $(location)/prod/Dockerfile-5.2 $(location)/prod
|
||||
rebuild-prod-53:
|
||||
docker build --no-cache -t devilbox/php-fpm:5.3-prod -f $(location)/prod/Dockerfile-5.3 $(location)/prod
|
||||
rebuild-prod-54:
|
||||
docker build --no-cache -t devilbox/php-fpm:5.4-prod -f $(location)/prod/Dockerfile-5.4 $(location)/prod
|
||||
rebuild-prod-55:
|
||||
@@ -227,7 +291,13 @@ rebuild-prod-71:
|
||||
docker build --no-cache -t devilbox/php-fpm:7.1-prod -f $(location)/prod/Dockerfile-7.1 $(location)/prod
|
||||
rebuild-prod-72:
|
||||
docker build --no-cache -t devilbox/php-fpm:7.2-prod -f $(location)/prod/Dockerfile-7.2 $(location)/prod
|
||||
rebuild-prod-73:
|
||||
docker build --no-cache -t devilbox/php-fpm:7.3-prod -f $(location)/prod/Dockerfile-7.3 $(location)/prod
|
||||
|
||||
rebuild-work-52:
|
||||
docker build --no-cache -t devilbox/php-fpm:5.2-work -f $(location)/work/Dockerfile-5.2 $(location)/work
|
||||
rebuild-work-53:
|
||||
docker build --no-cache -t devilbox/php-fpm:5.3-work -f $(location)/work/Dockerfile-5.3 $(location)/work
|
||||
rebuild-work-54:
|
||||
docker build --no-cache -t devilbox/php-fpm:5.4-work -f $(location)/work/Dockerfile-5.4 $(location)/work
|
||||
rebuild-work-55:
|
||||
@@ -240,12 +310,18 @@ rebuild-work-71:
|
||||
docker build --no-cache -t devilbox/php-fpm:7.1-work -f $(location)/work/Dockerfile-7.1 $(location)/work
|
||||
rebuild-work-72:
|
||||
docker build --no-cache -t devilbox/php-fpm:7.2-work -f $(location)/work/Dockerfile-7.2 $(location)/work
|
||||
rebuild-work-73:
|
||||
docker build --no-cache -t devilbox/php-fpm:7.3-work -f $(location)/work/Dockerfile-7.3 $(location)/work
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Pull base FROM images
|
||||
###
|
||||
pull-from-52:
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-5.2 | sed 's/^FROM//g'; done)
|
||||
pull-from-53:
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-5.3 | sed 's/^FROM//g'; done)
|
||||
pull-from-54:
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-5.4 | sed 's/^FROM//g'; done)
|
||||
pull-from-55:
|
||||
@@ -258,12 +334,28 @@ pull-from-71:
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-7.1 | sed 's/^FROM//g'; done)
|
||||
pull-from-72:
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-7.2 | sed 's/^FROM//g'; done)
|
||||
pull-from-73:
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-7.3 | sed 's/^FROM//g'; done)
|
||||
|
||||
|
||||
###
|
||||
### Test all
|
||||
###
|
||||
test-all: test-base test-mods test-prod test-work
|
||||
|
||||
test-base: test-base-52 test-base-53 test-base-54 test-base-55 test-base-56 test-base-70 test-base-71 test-base-72 test-base-73
|
||||
test-mods: test-mods-52 test-mods-53 test-mods-54 test-mods-55 test-mods-56 test-mods-70 test-mods-71 test-mods-72 test-mods-73
|
||||
test-prod: test-prod-52 test-prod-53 test-prod-54 test-prod-55 test-prod-56 test-prod-70 test-prod-71 test-prod-72 test-prod-73
|
||||
test-work: test-work-52 test-work-53 test-work-54 test-work-55 test-work-56 test-work-70 test-work-71 test-work-72 test-work-73
|
||||
|
||||
|
||||
###
|
||||
### Tests
|
||||
###
|
||||
test-base-52:
|
||||
./tests/test.sh 5.2 base
|
||||
test-base-53:
|
||||
./tests/test.sh 5.3 base
|
||||
test-base-54:
|
||||
./tests/test.sh 5.4 base
|
||||
test-base-55:
|
||||
@@ -276,7 +368,13 @@ test-base-71:
|
||||
./tests/test.sh 7.1 base
|
||||
test-base-72:
|
||||
./tests/test.sh 7.2 base
|
||||
test-base-73:
|
||||
./tests/test.sh 7.3 base
|
||||
|
||||
test-mods-52:
|
||||
./tests/test.sh 5.2 mods
|
||||
test-mods-53:
|
||||
./tests/test.sh 5.3 mods
|
||||
test-mods-54:
|
||||
./tests/test.sh 5.4 mods
|
||||
test-mods-55:
|
||||
@@ -289,7 +387,13 @@ test-mods-71:
|
||||
./tests/test.sh 7.1 mods
|
||||
test-mods-72:
|
||||
./tests/test.sh 7.2 mods
|
||||
test-mods-73:
|
||||
./tests/test.sh 7.3 mods
|
||||
|
||||
test-prod-52:
|
||||
./tests/test.sh 5.2 prod
|
||||
test-prod-53:
|
||||
./tests/test.sh 5.3 prod
|
||||
test-prod-54:
|
||||
./tests/test.sh 5.4 prod
|
||||
test-prod-55:
|
||||
@@ -302,7 +406,13 @@ test-prod-71:
|
||||
./tests/test.sh 7.1 prod
|
||||
test-prod-72:
|
||||
./tests/test.sh 7.2 prod
|
||||
test-prod-73:
|
||||
./tests/test.sh 7.3 prod
|
||||
|
||||
test-work-52:
|
||||
./tests/test.sh 5.2 work
|
||||
test-work-53:
|
||||
./tests/test.sh 5.3 work
|
||||
test-work-54:
|
||||
./tests/test.sh 5.4 work
|
||||
test-work-55:
|
||||
@@ -315,3 +425,5 @@ test-work-71:
|
||||
./tests/test.sh 7.1 work
|
||||
test-work-72:
|
||||
./tests/test.sh 7.2 work
|
||||
test-work-73:
|
||||
./tests/test.sh 7.3 work
|
||||
|
||||
301
build/ansible/CONFIGURATIONS/php-fpm.conf.j2
Normal file
301
build/ansible/CONFIGURATIONS/php-fpm.conf.j2
Normal file
@@ -0,0 +1,301 @@
|
||||
{% if not php_version == 5.2 %}
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings can be overwritten by later includes
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Timeouts
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; The timeout for serving a single request after which the worker process will be killed.
|
||||
; This option should be used when the 'max_execution_time' ini option does not stop script
|
||||
; execution for some reason.
|
||||
request_terminate_timeout = {{ item.cfg[item.key].request_terminate_timeout | default(item.cfg[item.alt].request_terminate_timeout) }}
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Logging
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
error_log = {{ item.cfg[item.key].error_log | default(item.cfg[item.alt].error_log) }}
|
||||
log_level = {{ item.cfg[item.key].log_level | default(item.cfg[item.alt].log_level) }}
|
||||
|
||||
[www]
|
||||
; if we send this to /proc/self/fd/1, it never appears
|
||||
access.log = {{ item.cfg[item.key].access_log | default(item.cfg[item.alt].access_log) }}
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Backlog configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; A maximum of backlog incoming connections will be queued for processing.
|
||||
; If a connection request arrives with the queue full the client may receive an error with an
|
||||
; indication of ECONNREFUSED, or, if the underlying protocol supports retransmission,
|
||||
; the request may be ignored so that retries may succeed.
|
||||
|
||||
; This should not be greater than `cat /proc/sys/net/core/somaxconn`, otherwise connections
|
||||
; are silently truncated
|
||||
listen.backlog = {{ item.cfg[item.key].listen_backlog | default(item.cfg[item.alt].listen_backlog) }}
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Worker configuration
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; static - the number of child processes is fixed (pm.max_children).
|
||||
;
|
||||
; dynamic - the number of child processes is set dynamically based on the following directives:
|
||||
; pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
|
||||
;
|
||||
; ondemand - the processes spawn on demand (when requested, as opposed to dynamic, where
|
||||
; pm.start_servers are started when the service is started.
|
||||
pm = {{ item.cfg[item.key].pm | default(item.cfg[item.alt].pm) }}
|
||||
|
||||
; The maximum number of child processes to be created
|
||||
pm.max_children = {{ item.cfg[item.key].pm_max_children | default(item.cfg[item.alt].pm_max_children) }}
|
||||
|
||||
; The number of child processes created on startup. Used only when pm is set to dynamic.
|
||||
; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
|
||||
pm.start_servers = {{ item.cfg[item.key].pm_start_servers | default(item.cfg[item.alt].pm_start_servers) }}
|
||||
|
||||
; The desired minimum number of idle server processes.
|
||||
pm.min_spare_servers = {{ item.cfg[item.key].pm_min_spare_servers | default(item.cfg[item.alt].pm_min_spare_servers) }}
|
||||
|
||||
; The desired maximum number of idle server processes.
|
||||
pm.max_spare_servers = {{ item.cfg[item.key].pm_max_spare_servers | default(item.cfg[item.alt].pm_max_spare_servers) }}
|
||||
|
||||
; The number of requests each child process should execute before respawning.
|
||||
; This can be useful to work around memory leaks in 3rd party libraries.
|
||||
; For endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
|
||||
; Default value: 0.
|
||||
pm.max_requests = {{ item.cfg[item.key].pm_max_requests | default(item.cfg[item.alt].pm_max_requests) }}
|
||||
|
||||
; The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand
|
||||
pm.process_idle_timeout = {{ item.cfg[item.key].pm_process_idle_timeout | default(item.cfg[item.alt].pm_process_idle_timeout) }}
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Include
|
||||
; ############################################################
|
||||
|
||||
|
||||
[global]
|
||||
include = /usr/local/etc/php-fpm.d/*.conf
|
||||
|
||||
|
||||
; ################################################################################
|
||||
; ####
|
||||
; #### The following settings overwrite any includes again
|
||||
; ####
|
||||
; ################################################################################
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Required for Dockerization
|
||||
; ############################################################
|
||||
|
||||
[global]
|
||||
daemonize = no
|
||||
|
||||
[www]
|
||||
{# This value is available since PHP >=5.4 #}
|
||||
{% if not php_version == 5.3 %}
|
||||
; Keep env variables set by docker
|
||||
clear_env = {{ item.cfg[item.key].clear_env | default(item.cfg[item.alt].clear_env) }}
|
||||
{% endif %}
|
||||
|
||||
; Redirect worker stdout and stderr into main error log. If not set, stdout and
|
||||
; stderr will be redirected to /dev/null according to FastCGI specs.
|
||||
; Note: on highloaded environement, this can cause some delay in the page
|
||||
; process time (several ms).
|
||||
; Default Value: no
|
||||
catch_workers_output = {{ item.cfg[item.key].catch_workers_output | default(item.cfg[item.alt].catch_workers_output) }}
|
||||
|
||||
|
||||
; ############################################################
|
||||
; User and Group
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
user = {{ item.cfg[item.key].user | default(item.cfg[item.alt].user) }}
|
||||
group = {{ item.cfg[item.key].group | default(item.cfg[item.alt].group) }}
|
||||
|
||||
|
||||
; ############################################################
|
||||
; Networking
|
||||
; ############################################################
|
||||
|
||||
[www]
|
||||
; Ensure to listen here
|
||||
listen = {{ item.cfg[item.key].listen | default(item.cfg[item.alt].listen)}}
|
||||
{% else %}
|
||||
{# PHP-FPM 5.2 uses XML format for configuration #}
|
||||
<?xml version="1.0" ?>
|
||||
<configuration>
|
||||
|
||||
All relative paths in this config are relative to php's install prefix
|
||||
|
||||
<section name="global_options">
|
||||
Pid file
|
||||
<value name="pid_file">/var/run/php-fpm.pid</value>
|
||||
|
||||
Error log file
|
||||
<value name="error_log">{{ item.cfg[item.key].error_log | default(item.cfg[item.alt].error_log) }}</value>
|
||||
|
||||
Log level
|
||||
<value name="log_level">{{ item.cfg[item.key].log_level | default(item.cfg[item.alt].log_level) }}</value>
|
||||
|
||||
When this amount of php processes exited with SIGSEGV or SIGBUS ...
|
||||
<value name="emergency_restart_threshold">10</value>
|
||||
|
||||
... in a less than this interval of time, a graceful restart will be initiated.
|
||||
Useful to work around accidental curruptions in accelerator's shared memory.
|
||||
<value name="emergency_restart_interval">1m</value>
|
||||
|
||||
Time limit on waiting child's reaction on signals from master
|
||||
<value name="process_control_timeout">5s</value>
|
||||
|
||||
Set to 'no' to debug fpm
|
||||
<value name="daemonize">no</value>
|
||||
</section>
|
||||
|
||||
<workers>
|
||||
|
||||
<section name="pool">
|
||||
|
||||
Name of pool. Used in logs and stats.
|
||||
<value name="name">www</value>
|
||||
|
||||
Address to accept fastcgi requests on.
|
||||
Valid syntax is 'ip.ad.re.ss:port' or just 'port' or '/path/to/unix/socket'
|
||||
<value name="listen_address">0.0.0.0:{{ item.cfg[item.key].listen | default(item.cfg[item.alt].listen) }}</value>
|
||||
|
||||
<value name="listen_options">
|
||||
Set listen(2) backlog
|
||||
<value name="backlog">{{ item.cfg[item.key].listen_backlog | default(item.cfg[item.alt].listen_backlog) }}</value>
|
||||
Set permissions for unix socket, if one used.
|
||||
In Linux read/write permissions must be set in order to allow connections from web server.
|
||||
Many BSD-derrived systems allow connections regardless of permissions.
|
||||
<value name="owner"></value>
|
||||
<value name="group"></value>
|
||||
<value name="mode">0666</value>
|
||||
</value>
|
||||
|
||||
Additional php.ini defines, specific to this pool of workers.
|
||||
<value name="php_defines">
|
||||
<value name="error_reporting">{% if item.key == 'base' %}6135{% else %}-1{% endif %}</value>
|
||||
<value name="xmlrpc_errors">0</value>
|
||||
<value name="report_memleaks">1</value>
|
||||
<value name="display_errors">{% if item.key == 'base' %}0{% else %}1{% endif %}</value>
|
||||
<value name="display_startup_errors">{% if item.key == 'base' %}0{% else %}1{% endif %}</value>
|
||||
<value name="track_errors">1</value>
|
||||
<value name="log_errors">1</value>
|
||||
<value name="html_errors">{% if item.key == 'base' %}0{% else %}1{% endif %}</value>
|
||||
</value>
|
||||
|
||||
Unix user of processes
|
||||
<value name="user">{{ item.cfg[item.key].user | default(item.cfg[item.alt].user) }}</value>
|
||||
|
||||
Unix group of processes
|
||||
<value name="group">{{ item.cfg[item.key].group | default(item.cfg[item.alt].group) }}</value>
|
||||
|
||||
Process manager settings
|
||||
<value name="pm">
|
||||
|
||||
Sets style of controling worker process count.
|
||||
Valid values are 'static' and 'apache-like'
|
||||
<value name="style">apache-like</value>
|
||||
|
||||
Sets the limit on the number of simultaneous requests that will be served.
|
||||
Equivalent to Apache MaxClients directive.
|
||||
Equivalent to PHP_FCGI_CHILDREN environment in original php.fcgi
|
||||
Used with any pm_style.
|
||||
<!--<value name="max_children">{{ item.cfg[item.key].pm_max_children | default(item.cfg[item.alt].pm_max_children) }}</value>-->
|
||||
<value name="max_children">5</value>
|
||||
|
||||
Settings group for 'apache-like' pm style
|
||||
<value name="apache_like">
|
||||
Sets the number of server processes created on startup.
|
||||
Used only when 'apache-like' pm_style is selected
|
||||
<!--<value name="StartServers">{{ item.cfg[item.key].pm_start_servers | default(item.cfg[item.alt].pm_start_servers) }}</value>-->
|
||||
<value name="StartServers">3</value>
|
||||
|
||||
Sets the desired minimum number of idle server processes.
|
||||
Used only when 'apache-like' pm_style is selected
|
||||
<!--<value name="MinSpareServers">{{ item.cfg[item.key].pm_min_spare_servers | default(item.cfg[item.alt].pm_min_spare_servers) }}</value>-->
|
||||
<value name="MinSpareServers">2</value>
|
||||
|
||||
Sets the desired maximum number of idle server processes.
|
||||
Used only when 'apache-like' pm_style is selected
|
||||
<!--<value name="MaxSpareServers">{{ item.cfg[item.key].pm_max_spare_servers | default(item.cfg[item.alt].pm_max_spare_servers) }}</value>-->
|
||||
<value name="MaxSpareServers">4</value>
|
||||
</value>
|
||||
|
||||
</value>
|
||||
|
||||
The timeout (in seconds) for serving a single request after which the worker process will be terminated
|
||||
Should be used when 'max_execution_time' ini option does not stop script execution for some reason
|
||||
'0s' means 'off'
|
||||
<value name="request_terminate_timeout">{{ item.cfg[item.key].request_terminate_timeout | default(item.cfg[item.alt].request_terminate_timeout) }}</value>
|
||||
|
||||
The timeout (in seconds) for serving of single request after which a php backtrace will be dumped to slow.log file
|
||||
'0s' means 'off'
|
||||
<value name="request_slowlog_timeout">0s</value>
|
||||
|
||||
The log file for slow requests
|
||||
<value name="slowlog">{{ item.cfg[item.key].error_log | default(item.cfg[item.alt].error_log) }}</value>
|
||||
|
||||
Set open file desc rlimit
|
||||
<value name="rlimit_files">1024</value>
|
||||
|
||||
Set max core size rlimit
|
||||
<value name="rlimit_core">0</value>
|
||||
|
||||
Chroot to this directory at the start, absolute path
|
||||
<value name="chroot"></value>
|
||||
|
||||
Chdir to this directory at the start, absolute path
|
||||
<value name="chdir"></value>
|
||||
|
||||
Redirect workers' stdout and stderr into main error log.
|
||||
If not set, they will be redirected to /dev/null, according to FastCGI specs
|
||||
<value name="catch_workers_output">{{ item.cfg[item.key].catch_workers_output | default(item.cfg[item.alt].catch_workers_output) }}</value>
|
||||
|
||||
How much requests each process should execute before respawn.
|
||||
Useful to work around memory leaks in 3rd party libraries.
|
||||
For endless request processing please specify 0
|
||||
Equivalent to PHP_FCGI_MAX_REQUESTS
|
||||
<value name="max_requests">{{ item.cfg[item.key].pm_max_requests | default(item.cfg[item.alt].pm_max_requests) }}</value>
|
||||
|
||||
Comma separated list of ipv4 addresses of FastCGI clients that allowed to connect.
|
||||
Equivalent to FCGI_WEB_SERVER_ADDRS environment in original php.fcgi (5.2.2+)
|
||||
Makes sense only with AF_INET listening socket.
|
||||
<!-- <value name="allowed_clients">127.0.0.1</value> -->
|
||||
|
||||
Pass environment variables like LD_LIBRARY_PATH
|
||||
All $VARIABLEs are taken from current environment
|
||||
<value name="environment">
|
||||
<value name="HOSTNAME">$HOSTNAME</value>
|
||||
<value name="PATH">/usr/local/bin:/usr/bin:/bin</value>
|
||||
<value name="TMP">/tmp</value>
|
||||
<value name="TMPDIR">/tmp</value>
|
||||
<value name="TEMP">/tmp</value>
|
||||
<value name="OSTYPE">$OSTYPE</value>
|
||||
<value name="MACHTYPE">$MACHTYPE</value>
|
||||
<value name="MALLOC_CHECK_">2</value>
|
||||
</value>
|
||||
|
||||
</section>
|
||||
|
||||
</workers>
|
||||
|
||||
</configuration>
|
||||
{% endif %}
|
||||
56
build/ansible/CONFIGURATIONS/php.ini.j2
Normal file
56
build/ansible/CONFIGURATIONS/php.ini.j2
Normal file
@@ -0,0 +1,56 @@
|
||||
; ############################################################
|
||||
; # Devilbox PHP defaults for {{ php_version }}-{{ item.key }}
|
||||
; ############################################################
|
||||
|
||||
; Each PHP flavour (base, mods, prod, work) might have its own php.ini.
|
||||
; If none is present, the one from the previous flavour is inherited.
|
||||
|
||||
|
||||
[PHP]
|
||||
|
||||
; Memory
|
||||
; Note: "memory_limit" should be larger than "post_max_size"
|
||||
memory_limit = {{ item.cfg[item.key].memory_limit | default(item.cfg[item.alt].memory_limit) }}
|
||||
|
||||
|
||||
; Timeouts
|
||||
max_execution_time = {{ item.cfg[item.key].max_execution_time | default(item.cfg[item.alt].max_execution_time) }}
|
||||
max_input_time = {{ item.cfg[item.key].max_input_time | default(item.cfg[item.alt].max_input_time) }}
|
||||
|
||||
|
||||
; Uploads
|
||||
; Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size = {{ item.cfg[item.key].post_max_size | default(item.cfg[item.alt].post_max_size) }}
|
||||
upload_max_filesize = {{ item.cfg[item.key].upload_max_filesize | default(item.cfg[item.alt].upload_max_filesize) }}
|
||||
max_file_uploads = {{ item.cfg[item.key].max_file_uploads | default(item.cfg[item.alt].max_file_uploads) }}
|
||||
|
||||
|
||||
; Vars
|
||||
variables_order = {{ item.cfg[item.key].variables_order | default(item.cfg[item.alt].variables_order) }}
|
||||
{# Only available since PHP >=5.4 #}
|
||||
{% if not (php_version == 5.2 or php_version == 5.3 ) %}
|
||||
max_input_vars = {{ item.cfg[item.key].max_input_vars | default(item.cfg[item.alt].max_input_vars) }}
|
||||
{% endif %}
|
||||
max_input_nesting_level = {{ item.cfg[item.key].max_input_nesting_level | default(item.cfg[item.alt].max_input_nesting_level) }}
|
||||
|
||||
|
||||
; Error reporting
|
||||
; Note: error_log is dynamic and handled during start to set appropriate setting
|
||||
error_reporting = {{ item.cfg[item.key].error_reporting | default(item.cfg[item.alt].error_reporting) }}
|
||||
xmlrpc_errors = {{ item.cfg[item.key].xmlrpc_errors | default(item.cfg[item.alt].xmlrpc_errors) }}
|
||||
report_memleaks = {{ item.cfg[item.key].report_memleaks | default(item.cfg[item.alt].report_memleaks) }}
|
||||
display_errors = {{ item.cfg[item.key].display_errors | default(item.cfg[item.alt].display_errors) }}
|
||||
display_startup_errors = {{ item.cfg[item.key].display_startup_errors | default(item.cfg[item.alt].display_startup_errors) }}
|
||||
{# Only available before PHP 7.2 #}
|
||||
{% if php_version == 5.2 or php_version == 5.3 or php_version == 5.4 or php_version == 5.5 or php_version == 5.6 or php_version == 7.0 or php_version == 7.1 %}
|
||||
track_errors = {{ item.cfg[item.key].track_errors | default(item.cfg[item.alt].track_errors) }}
|
||||
{% endif %}
|
||||
log_errors = {{ item.cfg[item.key].log_errors | default(item.cfg[item.alt].log_errors) }}
|
||||
html_errors = {{ item.cfg[item.key].html_errors | default(item.cfg[item.alt].html_errors) }}
|
||||
|
||||
|
||||
; Xdebug settings
|
||||
xdebug.default_enable = {{ item.cfg[item.key].xdebug_default_enable | default(item.cfg[item.alt].xdebug_default_enable) }}
|
||||
xdebug.profiler_enable = {{ item.cfg[item.key].xdebug_profiler_enable | default(item.cfg[item.alt].xdebug_profiler_enable) }}
|
||||
xdebug.remote_enable = {{ item.cfg[item.key].xdebug_remote_enable | default(item.cfg[item.alt].xdebug_remote_enable) }}
|
||||
xdebug.remote_autostart = {{ item.cfg[item.key].xdebug_remote_autostart | default(item.cfg[item.alt].xdebug_remote_autostart) }}
|
||||
@@ -1,5 +1,13 @@
|
||||
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-base.j2 instead.
|
||||
{% if php_version == 5.2 %}
|
||||
FROM devilbox/php-fpm-5.2
|
||||
{% elif php_version == 5.3 %}
|
||||
FROM devilbox/php-fpm-5.3
|
||||
{% elif php_version == 7.3 %}
|
||||
FROM devilbox/php-fpm-7.3
|
||||
{% else %}
|
||||
FROM php:{{ php_version }}-fpm
|
||||
{% endif %}
|
||||
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
||||
|
||||
|
||||
@@ -20,7 +28,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="{{ php_version }}"
|
||||
|
||||
|
||||
###
|
||||
@@ -46,16 +55,21 @@ RUN set -x \
|
||||
###
|
||||
RUN set -x \
|
||||
&& rm -rf /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d
|
||||
&& mkdir -p /usr/local/etc/php-fpm.d \
|
||||
&& mkdir -p /var/lib/php/session \
|
||||
&& mkdir -p /var/lib/php/wsdlcache \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/session \
|
||||
&& chown -R devilbox:devilbox /var/lib/php/wsdlcache
|
||||
|
||||
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-{{ php_version }}.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-{{ php_version }}.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
COPY ./data/php-fpm.conf /usr/local/etc/php-fpm.conf
|
||||
COPY ./data/php-fpm.d /usr/local/etc/php-fpm.d
|
||||
|
||||
|
||||
{% if debug %}
|
||||
|
||||
@@ -113,6 +113,9 @@ RUN set -x \
|
||||
{% endif %}
|
||||
&& docker-php-ext-enable {{ ext }} \
|
||||
&& cd / && rm -rf /tmp/{{ ext }} \
|
||||
{# ---- 4.) CUSTOM ---- #}
|
||||
{% elif extensions_available[ext][php_version]['type'] == 'custom' %}
|
||||
&& {{ extensions_available[ext][php_version]['command'] }} \
|
||||
{% endif %}
|
||||
{# ---------- Installation (generic) ---------- #}
|
||||
{% elif 'all' in extensions_available[ext] and 'type' in extensions_available[ext]['all'] %}
|
||||
@@ -147,6 +150,9 @@ RUN set -x \
|
||||
{% endif %}
|
||||
&& docker-php-ext-enable {{ ext }} \
|
||||
&& cd / && rm -rf /tmp/{{ ext }} \
|
||||
{# ---- 4.) CUSTOM ---- #}
|
||||
{% elif extensions_available[ext]['all']['type'] == 'custom' %}
|
||||
&& {{ extensions_available[ext]['all']['command'] }} \
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
@@ -161,7 +167,7 @@ RUN set -x \
|
||||
${RUN_DEPS} \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& update-ca-certificates \
|
||||
&& find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true
|
||||
&& sh -c "find /usr/local -type f -perm /u+x -exec strip --strip-all '{}' + || true"
|
||||
|
||||
|
||||
{% if debug %}
|
||||
@@ -181,6 +187,8 @@ RUN set -x \
|
||||
{% if ext == 'opcache' %}
|
||||
&& php -m | grep -oiE '^Zend Opcache$' \
|
||||
&& php-fpm -m | grep -oiE '^Zend Opcache$' \
|
||||
{% elif ext == 'ioncube' %}
|
||||
{# Not enabled #}
|
||||
{% else %}
|
||||
&& php -m | grep -oiE '^{{ ext }}$' \
|
||||
&& php-fpm -m | grep -oiE '^{{ ext }}$' \
|
||||
|
||||
@@ -60,6 +60,7 @@ COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /var/log/php
|
||||
VOLUME /var/mail
|
||||
|
||||
@@ -61,6 +61,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -77,6 +78,9 @@ RUN set -x \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -86,8 +90,14 @@ RUN set -x \
|
||||
net-tools \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -144,8 +154,8 @@ RUN \
|
||||
echo "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||
echo "export PATH"; \
|
||||
echo ". /etc/bash-devilbox"; \
|
||||
echo "if [ -d /etc/bash-custom.d/ ]; then"; \
|
||||
echo " for f in /etc/bash-custom.d/*.sh ; do"; \
|
||||
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||
echo " if [ -r \"\${f}\" ]; then"; \
|
||||
echo " . \"\${f}\""; \
|
||||
echo " fi"; \
|
||||
@@ -182,17 +192,22 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-{{ php_version }}.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-{{ php_version }}.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
VOLUME /etc/bash-custom.d
|
||||
VOLUME /etc/bashrc-devilbox.d
|
||||
VOLUME /etc/php-custom.d
|
||||
VOLUME /etc/php-fpm-custom.d
|
||||
VOLUME /etc/php-modules.d
|
||||
VOLUME /shared/backups
|
||||
VOLUME /var/log/php
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user