mirror of
https://github.com/devilbox/docker-php-fpm.git
synced 2025-12-11 19:41:16 +00:00
Compare commits
121 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 | ||
|
|
fabaf4a187 | ||
|
|
eba440839a | ||
|
|
7cac20d86d | ||
|
|
a6ed7cb16b | ||
|
|
4b2a450d1e | ||
|
|
fe379ae977 | ||
|
|
389b962aaf | ||
|
|
503decb518 | ||
|
|
519ae5e8a7 | ||
|
|
a13ad86820 | ||
|
|
b104211a0a | ||
|
|
30a0d45bad |
0
.gitignore
vendored
Executable file → Normal file
0
.gitignore
vendored
Executable file → Normal file
@@ -23,12 +23,15 @@ env:
|
|||||||
# DOCKER_PASSWORD
|
# DOCKER_PASSWORD
|
||||||
- secure: "ZRrVOVOkSCS2UxEi1HNF1iKefK4sDT/sPRl1HxMQjLnRRaAMdG0aRnBwQf2YAM2qzhCfN85qt6zZtC4awc2mHiZ88JrAZxBjK6xj4BwOyLbDuzpBsKXnx8Nix+wyYYKSjsC3LOYrsUe+4rvkw3tVvVaX8G2llojwdksF34VDmmHBmzCG/Bsexk7UqC+qw0PZm7BtctQO+IL0btmMDijRDElxfR+AuPvf9JdkhYzw9TOO7Jqd53NssNVGyL+XSV0dfGn8PkZTp1e8D+28pLK4oGVog+Wk7Cq94hSGjk5AkWKvL5441rupG1AA8K3njeDNMKdov4o+dmnkAH7Jh8tjShMhNhoxHce3IzpczjhoE1EyYQcyPf1qdfhV35Xv096iWX5809pp1MZF2oE5eism8JaU9NpGClryVbKVKtup8ko9/tCqz01Czq5Vue40feMkGtdePulg59OhyyPLYldsObw8QlZydkrmgVZe6b+GyybeiHraTfDq4pvTgUrC4Cmm5J3IB5Ig1THEiYKHfRJ5hSSMDDODeBXc8Xh6mFssEVshNx/jbUQWuAVYQFw/GIquVHxr6btbevrWIoD+zmqcc0L98u9pYH8w7b+gMgVJNCC4QQz2NCGGWw9l9/TmLrKJgeXbG18n8D314le1zuna6/VfH9pXIlbNO4hgz5NLHJk="
|
- secure: "ZRrVOVOkSCS2UxEi1HNF1iKefK4sDT/sPRl1HxMQjLnRRaAMdG0aRnBwQf2YAM2qzhCfN85qt6zZtC4awc2mHiZ88JrAZxBjK6xj4BwOyLbDuzpBsKXnx8Nix+wyYYKSjsC3LOYrsUe+4rvkw3tVvVaX8G2llojwdksF34VDmmHBmzCG/Bsexk7UqC+qw0PZm7BtctQO+IL0btmMDijRDElxfR+AuPvf9JdkhYzw9TOO7Jqd53NssNVGyL+XSV0dfGn8PkZTp1e8D+28pLK4oGVog+Wk7Cq94hSGjk5AkWKvL5441rupG1AA8K3njeDNMKdov4o+dmnkAH7Jh8tjShMhNhoxHce3IzpczjhoE1EyYQcyPf1qdfhV35Xv096iWX5809pp1MZF2oE5eism8JaU9NpGClryVbKVKtup8ko9/tCqz01Czq5Vue40feMkGtdePulg59OhyyPLYldsObw8QlZydkrmgVZe6b+GyybeiHraTfDq4pvTgUrC4Cmm5J3IB5Ig1THEiYKHfRJ5hSSMDDODeBXc8Xh6mFssEVshNx/jbUQWuAVYQFw/GIquVHxr6btbevrWIoD+zmqcc0L98u9pYH8w7b+gMgVJNCC4QQz2NCGGWw9l9/TmLrKJgeXbG18n8D314le1zuna6/VfH9pXIlbNO4hgz5NLHJk="
|
||||||
matrix:
|
matrix:
|
||||||
|
- PHP=5.2
|
||||||
|
- PHP=5.3
|
||||||
- PHP=5.4
|
- PHP=5.4
|
||||||
- PHP=5.5
|
- PHP=5.5
|
||||||
- PHP=5.6
|
- PHP=5.6
|
||||||
- PHP=7.0
|
- PHP=7.0
|
||||||
- PHP=7.1
|
- PHP=7.1
|
||||||
- PHP=7.2
|
- PHP=7.2
|
||||||
|
- PHP=7.3
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
@@ -86,16 +89,13 @@ before_script:
|
|||||||
- ./build/gen-readme.sh "${PHP}"
|
- ./build/gen-readme.sh "${PHP}"
|
||||||
- git diff --quiet || { echo "Build Changes"; git diff; git status; false; }
|
- git diff --quiet || { echo "Build Changes"; git diff; git status; false; }
|
||||||
|
|
||||||
# Integration tests
|
|
||||||
- true
|
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Push to Dockerhub
|
### Push to Dockerhub
|
||||||
###
|
###
|
||||||
script:
|
script:
|
||||||
- if [ "${TRAVIS_PULL_REQUEST}" == "false" ]; then
|
- 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
|
if [ "${TRAVIS_BRANCH}" == "master" ]; then
|
||||||
docker push "${IMAGE}:${PHP}-base";
|
docker push "${IMAGE}:${PHP}-base";
|
||||||
docker push "${IMAGE}:${PHP}-mods";
|
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" \
|
ENV MY_USER="devilbox" \
|
||||||
MY_GROUP="devilbox" \
|
MY_GROUP="devilbox" \
|
||||||
MY_UID="1000" \
|
MY_UID="1000" \
|
||||||
MY_GID="1000"
|
MY_GID="1000" \
|
||||||
|
PHP_VERSION="5.4"
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
@@ -32,21 +33,35 @@ RUN set -x \
|
|||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Upgrade
|
### Upgrade (install ps)
|
||||||
###
|
###
|
||||||
RUN set -x \
|
RUN set -x \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get upgrade -y \
|
&& apt-get upgrade -y \
|
||||||
|
&& apt-get install --no-install-recommends --no-install-suggests -y procps \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& 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 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.sh /docker-entrypoint.sh
|
||||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
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" \
|
ENV MY_USER="devilbox" \
|
||||||
MY_GROUP="devilbox" \
|
MY_GROUP="devilbox" \
|
||||||
MY_UID="1000" \
|
MY_UID="1000" \
|
||||||
MY_GID="1000"
|
MY_GID="1000" \
|
||||||
|
PHP_VERSION="5.5"
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
@@ -32,21 +33,35 @@ RUN set -x \
|
|||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Upgrade
|
### Upgrade (install ps)
|
||||||
###
|
###
|
||||||
RUN set -x \
|
RUN set -x \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get upgrade -y \
|
&& apt-get upgrade -y \
|
||||||
|
&& apt-get install --no-install-recommends --no-install-suggests -y procps \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& 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 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.sh /docker-entrypoint.sh
|
||||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
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" \
|
ENV MY_USER="devilbox" \
|
||||||
MY_GROUP="devilbox" \
|
MY_GROUP="devilbox" \
|
||||||
MY_UID="1000" \
|
MY_UID="1000" \
|
||||||
MY_GID="1000"
|
MY_GID="1000" \
|
||||||
|
PHP_VERSION="5.6"
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
@@ -32,21 +33,35 @@ RUN set -x \
|
|||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Upgrade
|
### Upgrade (install ps)
|
||||||
###
|
###
|
||||||
RUN set -x \
|
RUN set -x \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get upgrade -y \
|
&& apt-get upgrade -y \
|
||||||
|
&& apt-get install --no-install-recommends --no-install-suggests -y procps \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& 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 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.sh /docker-entrypoint.sh
|
||||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
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" \
|
ENV MY_USER="devilbox" \
|
||||||
MY_GROUP="devilbox" \
|
MY_GROUP="devilbox" \
|
||||||
MY_UID="1000" \
|
MY_UID="1000" \
|
||||||
MY_GID="1000"
|
MY_GID="1000" \
|
||||||
|
PHP_VERSION="7.0"
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
@@ -32,21 +33,35 @@ RUN set -x \
|
|||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Upgrade
|
### Upgrade (install ps)
|
||||||
###
|
###
|
||||||
RUN set -x \
|
RUN set -x \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get upgrade -y \
|
&& apt-get upgrade -y \
|
||||||
|
&& apt-get install --no-install-recommends --no-install-suggests -y procps \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& 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 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.sh /docker-entrypoint.sh
|
||||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
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" \
|
ENV MY_USER="devilbox" \
|
||||||
MY_GROUP="devilbox" \
|
MY_GROUP="devilbox" \
|
||||||
MY_UID="1000" \
|
MY_UID="1000" \
|
||||||
MY_GID="1000"
|
MY_GID="1000" \
|
||||||
|
PHP_VERSION="7.1"
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
@@ -32,21 +33,35 @@ RUN set -x \
|
|||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Upgrade
|
### Upgrade (install ps)
|
||||||
###
|
###
|
||||||
RUN set -x \
|
RUN set -x \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get upgrade -y \
|
&& apt-get upgrade -y \
|
||||||
|
&& apt-get install --no-install-recommends --no-install-suggests -y procps \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& 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 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.sh /docker-entrypoint.sh
|
||||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
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" \
|
ENV MY_USER="devilbox" \
|
||||||
MY_GROUP="devilbox" \
|
MY_GROUP="devilbox" \
|
||||||
MY_UID="1000" \
|
MY_UID="1000" \
|
||||||
MY_GID="1000"
|
MY_GID="1000" \
|
||||||
|
PHP_VERSION="7.2"
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
@@ -32,21 +33,35 @@ RUN set -x \
|
|||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Upgrade
|
### Upgrade (install ps)
|
||||||
###
|
###
|
||||||
RUN set -x \
|
RUN set -x \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get upgrade -y \
|
&& apt-get upgrade -y \
|
||||||
|
&& apt-get install --no-install-recommends --no-install-suggests -y procps \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& 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 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.sh /docker-entrypoint.sh
|
||||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
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}"
|
log "info" "Changing user '${username}' uid to: ${uid}" "${debug}"
|
||||||
run "usermod -u ${uid} ${username}" "${debug}"
|
run "usermod -u ${uid} ${username}" "${debug}"
|
||||||
run "chown -R ${username} ${homedir}" "${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
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
@@ -102,6 +104,8 @@ set_gid() {
|
|||||||
log "info" "Changing group '${groupname}' gid to: ${gid}" "${debug}"
|
log "info" "Changing group '${groupname}' gid to: ${gid}" "${debug}"
|
||||||
run "groupmod -g ${gid} ${groupname}" "${debug}"
|
run "groupmod -g ${gid} ${groupname}" "${debug}"
|
||||||
run "chown -R :${groupname} ${homedir}" "${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
|
||||||
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"]
|
||||||
@@ -46,6 +46,9 @@ ENV BUILD_DEPS \
|
|||||||
zlib1g-dev \
|
zlib1g-dev \
|
||||||
libmemcached-dev \
|
libmemcached-dev \
|
||||||
libssl-dev \
|
libssl-dev \
|
||||||
|
libsasl2-dev \
|
||||||
|
libssl-dev \
|
||||||
|
libsasl2-dev \
|
||||||
freetds-dev \
|
freetds-dev \
|
||||||
libfbclient2 \
|
libfbclient2 \
|
||||||
libib-util \
|
libib-util \
|
||||||
@@ -90,6 +93,7 @@ ENV RUN_DEPS \
|
|||||||
libicu52 \
|
libicu52 \
|
||||||
libmcrypt4 \
|
libmcrypt4 \
|
||||||
libmemcachedutil2 \
|
libmemcachedutil2 \
|
||||||
|
libmysqlclient18 \
|
||||||
libsybdb5 \
|
libsybdb5 \
|
||||||
libfbclient2 \
|
libfbclient2 \
|
||||||
libpq5 \
|
libpq5 \
|
||||||
@@ -112,6 +116,16 @@ RUN set -x \
|
|||||||
${BUILD_DEPS} \
|
${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 \
|
&& echo "/usr" | pecl install amqp \
|
||||||
&& docker-php-ext-enable amqp \
|
&& docker-php-ext-enable amqp \
|
||||||
&& pecl install apcu-4.0.11 \
|
&& pecl install apcu-4.0.11 \
|
||||||
@@ -156,6 +170,8 @@ RUN set -x \
|
|||||||
&& docker-php-ext-enable memcache \
|
&& docker-php-ext-enable memcache \
|
||||||
&& pecl install memcached-2.2.0 \
|
&& pecl install memcached-2.2.0 \
|
||||||
&& docker-php-ext-enable memcached \
|
&& docker-php-ext-enable memcached \
|
||||||
|
&& yes | pecl install mongo \
|
||||||
|
&& docker-php-ext-enable mongo \
|
||||||
&& pecl install mongodb-1.2.11 \
|
&& pecl install mongodb-1.2.11 \
|
||||||
&& docker-php-ext-enable mongodb \
|
&& docker-php-ext-enable mongodb \
|
||||||
&& pecl install msgpack-0.5.7 \
|
&& pecl install msgpack-0.5.7 \
|
||||||
@@ -230,7 +246,7 @@ RUN set -x \
|
|||||||
${RUN_DEPS} \
|
${RUN_DEPS} \
|
||||||
&& rm -rf /var/lib/apt/lists/* \
|
&& rm -rf /var/lib/apt/lists/* \
|
||||||
&& update-ca-certificates \
|
&& 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"
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
@@ -301,6 +317,8 @@ RUN set -x \
|
|||||||
&& php-fpm -m | grep -oiE '^memcache$' \
|
&& php-fpm -m | grep -oiE '^memcache$' \
|
||||||
&& php -m | grep -oiE '^memcached$' \
|
&& php -m | grep -oiE '^memcached$' \
|
||||||
&& php-fpm -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 -m | grep -oiE '^mongodb$' \
|
||||||
&& php-fpm -m | grep -oiE '^mongodb$' \
|
&& php-fpm -m | grep -oiE '^mongodb$' \
|
||||||
&& php -m | grep -oiE '^msgpack$' \
|
&& php -m | grep -oiE '^msgpack$' \
|
||||||
|
|||||||
@@ -46,6 +46,9 @@ ENV BUILD_DEPS \
|
|||||||
zlib1g-dev \
|
zlib1g-dev \
|
||||||
libmemcached-dev \
|
libmemcached-dev \
|
||||||
libssl-dev \
|
libssl-dev \
|
||||||
|
libsasl2-dev \
|
||||||
|
libssl-dev \
|
||||||
|
libsasl2-dev \
|
||||||
freetds-dev \
|
freetds-dev \
|
||||||
libfbclient2 \
|
libfbclient2 \
|
||||||
libib-util \
|
libib-util \
|
||||||
@@ -92,6 +95,7 @@ ENV RUN_DEPS \
|
|||||||
libicu52 \
|
libicu52 \
|
||||||
libmcrypt4 \
|
libmcrypt4 \
|
||||||
libmemcachedutil2 \
|
libmemcachedutil2 \
|
||||||
|
libmysqlclient18 \
|
||||||
libsybdb5 \
|
libsybdb5 \
|
||||||
libfbclient2 \
|
libfbclient2 \
|
||||||
libpq5 \
|
libpq5 \
|
||||||
@@ -114,6 +118,16 @@ RUN set -x \
|
|||||||
${BUILD_DEPS} \
|
${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 \
|
&& echo "/usr" | pecl install amqp \
|
||||||
&& docker-php-ext-enable amqp \
|
&& docker-php-ext-enable amqp \
|
||||||
&& pecl install apcu-4.0.11 \
|
&& pecl install apcu-4.0.11 \
|
||||||
@@ -158,6 +172,8 @@ RUN set -x \
|
|||||||
&& docker-php-ext-enable memcache \
|
&& docker-php-ext-enable memcache \
|
||||||
&& pecl install memcached-2.2.0 \
|
&& pecl install memcached-2.2.0 \
|
||||||
&& docker-php-ext-enable memcached \
|
&& docker-php-ext-enable memcached \
|
||||||
|
&& yes | pecl install mongo \
|
||||||
|
&& docker-php-ext-enable mongo \
|
||||||
&& pecl install mongodb \
|
&& pecl install mongodb \
|
||||||
&& docker-php-ext-enable mongodb \
|
&& docker-php-ext-enable mongodb \
|
||||||
&& pecl install msgpack-0.5.7 \
|
&& pecl install msgpack-0.5.7 \
|
||||||
@@ -232,7 +248,7 @@ RUN set -x \
|
|||||||
${RUN_DEPS} \
|
${RUN_DEPS} \
|
||||||
&& rm -rf /var/lib/apt/lists/* \
|
&& rm -rf /var/lib/apt/lists/* \
|
||||||
&& update-ca-certificates \
|
&& 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"
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
@@ -303,6 +319,8 @@ RUN set -x \
|
|||||||
&& php-fpm -m | grep -oiE '^memcache$' \
|
&& php-fpm -m | grep -oiE '^memcache$' \
|
||||||
&& php -m | grep -oiE '^memcached$' \
|
&& php -m | grep -oiE '^memcached$' \
|
||||||
&& php-fpm -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 -m | grep -oiE '^mongodb$' \
|
||||||
&& php-fpm -m | grep -oiE '^mongodb$' \
|
&& php-fpm -m | grep -oiE '^mongodb$' \
|
||||||
&& php -m | grep -oiE '^msgpack$' \
|
&& php -m | grep -oiE '^msgpack$' \
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ ENV BUILD_DEPS \
|
|||||||
libvpx-dev \
|
libvpx-dev \
|
||||||
zlib1g-dev \
|
zlib1g-dev \
|
||||||
libfreetype6-dev \
|
libfreetype6-dev \
|
||||||
|
libwebp-dev \
|
||||||
libgmp-dev \
|
libgmp-dev \
|
||||||
libmagickwand-dev \
|
libmagickwand-dev \
|
||||||
libc-client-dev \
|
libc-client-dev \
|
||||||
@@ -46,6 +47,9 @@ ENV BUILD_DEPS \
|
|||||||
zlib1g-dev \
|
zlib1g-dev \
|
||||||
libmemcached-dev \
|
libmemcached-dev \
|
||||||
libssl-dev \
|
libssl-dev \
|
||||||
|
libsasl2-dev \
|
||||||
|
libssl-dev \
|
||||||
|
libsasl2-dev \
|
||||||
freetds-dev \
|
freetds-dev \
|
||||||
libfbclient2 \
|
libfbclient2 \
|
||||||
libib-util \
|
libib-util \
|
||||||
@@ -54,7 +58,6 @@ ENV BUILD_DEPS \
|
|||||||
libpq-dev \
|
libpq-dev \
|
||||||
libsqlite3-dev \
|
libsqlite3-dev \
|
||||||
libpq-dev \
|
libpq-dev \
|
||||||
libssl-dev \
|
|
||||||
libpspell-dev \
|
libpspell-dev \
|
||||||
libedit-dev \
|
libedit-dev \
|
||||||
libreadline-dev \
|
libreadline-dev \
|
||||||
@@ -80,19 +83,21 @@ ENV BUILD_DEPS \
|
|||||||
git
|
git
|
||||||
|
|
||||||
ENV RUN_DEPS \
|
ENV RUN_DEPS \
|
||||||
librabbitmq1 \
|
librabbitmq4 \
|
||||||
libenchant1c2a \
|
libenchant1c2a \
|
||||||
libpng12-0 \
|
libpng16-16 \
|
||||||
libjpeg62-turbo \
|
libjpeg62-turbo \
|
||||||
libxpm4 \
|
libxpm4 \
|
||||||
libvpx1 \
|
libvpx4 \
|
||||||
libfreetype6 \
|
libfreetype6 \
|
||||||
libmagickwand-6.q16-2 \
|
libwebp6 \
|
||||||
|
libmagickwand-6.q16-3 \
|
||||||
libc-client2007e \
|
libc-client2007e \
|
||||||
libfbclient2 \
|
libfbclient2 \
|
||||||
libicu52 \
|
libicu57 \
|
||||||
libmcrypt4 \
|
libmcrypt4 \
|
||||||
libmemcachedutil2 \
|
libmemcachedutil2 \
|
||||||
|
libmariadbclient18 \
|
||||||
libsybdb5 \
|
libsybdb5 \
|
||||||
libfbclient2 \
|
libfbclient2 \
|
||||||
libpq5 \
|
libpq5 \
|
||||||
@@ -100,10 +105,10 @@ ENV RUN_DEPS \
|
|||||||
libaspell15 \
|
libaspell15 \
|
||||||
librecode0 \
|
librecode0 \
|
||||||
snmp \
|
snmp \
|
||||||
libnghttp2-5 \
|
libnghttp2-14 \
|
||||||
libtidy-0.99-0 \
|
libtidy5 \
|
||||||
libxslt1.1 \
|
libxslt1.1 \
|
||||||
libzip2 \
|
libzip4 \
|
||||||
ca-certificates
|
ca-certificates
|
||||||
|
|
||||||
|
|
||||||
@@ -116,6 +121,16 @@ RUN set -x \
|
|||||||
${BUILD_DEPS} \
|
${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 \
|
&& echo "/usr" | pecl install amqp \
|
||||||
&& docker-php-ext-enable amqp \
|
&& docker-php-ext-enable amqp \
|
||||||
&& pecl install apcu-4.0.11 \
|
&& pecl install apcu-4.0.11 \
|
||||||
@@ -160,6 +175,8 @@ RUN set -x \
|
|||||||
&& docker-php-ext-enable memcache \
|
&& docker-php-ext-enable memcache \
|
||||||
&& pecl install memcached-2.2.0 \
|
&& pecl install memcached-2.2.0 \
|
||||||
&& docker-php-ext-enable memcached \
|
&& docker-php-ext-enable memcached \
|
||||||
|
&& yes | pecl install mongo \
|
||||||
|
&& docker-php-ext-enable mongo \
|
||||||
&& pecl install mongodb \
|
&& pecl install mongodb \
|
||||||
&& docker-php-ext-enable mongodb \
|
&& docker-php-ext-enable mongodb \
|
||||||
&& pecl install msgpack-0.5.7 \
|
&& pecl install msgpack-0.5.7 \
|
||||||
@@ -183,7 +200,6 @@ RUN set -x \
|
|||||||
&& cd build && ./install \
|
&& cd build && ./install \
|
||||||
&& docker-php-ext-enable phalcon \
|
&& docker-php-ext-enable phalcon \
|
||||||
&& cd / && rm -rf /tmp/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) posix \
|
||||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pspell \
|
&& /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) readline \
|
||||||
@@ -234,7 +250,7 @@ RUN set -x \
|
|||||||
${RUN_DEPS} \
|
${RUN_DEPS} \
|
||||||
&& rm -rf /var/lib/apt/lists/* \
|
&& rm -rf /var/lib/apt/lists/* \
|
||||||
&& update-ca-certificates \
|
&& 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"
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
@@ -305,6 +321,8 @@ RUN set -x \
|
|||||||
&& php-fpm -m | grep -oiE '^memcache$' \
|
&& php-fpm -m | grep -oiE '^memcache$' \
|
||||||
&& php -m | grep -oiE '^memcached$' \
|
&& php -m | grep -oiE '^memcached$' \
|
||||||
&& php-fpm -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 -m | grep -oiE '^mongodb$' \
|
||||||
&& php-fpm -m | grep -oiE '^mongodb$' \
|
&& php-fpm -m | grep -oiE '^mongodb$' \
|
||||||
&& php -m | grep -oiE '^msgpack$' \
|
&& php -m | grep -oiE '^msgpack$' \
|
||||||
@@ -333,8 +351,6 @@ RUN set -x \
|
|||||||
&& php-fpm -m | grep -oiE '^pgsql$' \
|
&& php-fpm -m | grep -oiE '^pgsql$' \
|
||||||
&& php -m | grep -oiE '^phalcon$' \
|
&& php -m | grep -oiE '^phalcon$' \
|
||||||
&& php-fpm -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 -m | grep -oiE '^posix$' \
|
||||||
&& php-fpm -m | grep -oiE '^posix$' \
|
&& php-fpm -m | grep -oiE '^posix$' \
|
||||||
&& php -m | grep -oiE '^pspell$' \
|
&& php -m | grep -oiE '^pspell$' \
|
||||||
|
|||||||
@@ -40,6 +40,7 @@ ENV BUILD_DEPS \
|
|||||||
libib-util \
|
libib-util \
|
||||||
firebird-dev \
|
firebird-dev \
|
||||||
libicu-dev \
|
libicu-dev \
|
||||||
|
bison \
|
||||||
libldap2-dev \
|
libldap2-dev \
|
||||||
libsasl2-dev \
|
libsasl2-dev \
|
||||||
libmcrypt-dev \
|
libmcrypt-dev \
|
||||||
@@ -47,6 +48,7 @@ ENV BUILD_DEPS \
|
|||||||
zlib1g-dev \
|
zlib1g-dev \
|
||||||
libmemcached-dev \
|
libmemcached-dev \
|
||||||
libssl-dev \
|
libssl-dev \
|
||||||
|
libsasl2-dev \
|
||||||
freetds-dev \
|
freetds-dev \
|
||||||
libfbclient2 \
|
libfbclient2 \
|
||||||
libib-util \
|
libib-util \
|
||||||
@@ -55,7 +57,6 @@ ENV BUILD_DEPS \
|
|||||||
libpq-dev \
|
libpq-dev \
|
||||||
libsqlite3-dev \
|
libsqlite3-dev \
|
||||||
libpq-dev \
|
libpq-dev \
|
||||||
libssl-dev \
|
|
||||||
libpspell-dev \
|
libpspell-dev \
|
||||||
libedit-dev \
|
libedit-dev \
|
||||||
libreadline-dev \
|
libreadline-dev \
|
||||||
@@ -80,18 +81,18 @@ ENV BUILD_DEPS \
|
|||||||
git
|
git
|
||||||
|
|
||||||
ENV RUN_DEPS \
|
ENV RUN_DEPS \
|
||||||
librabbitmq1 \
|
librabbitmq4 \
|
||||||
libenchant1c2a \
|
libenchant1c2a \
|
||||||
libpng12-0 \
|
libpng16-16 \
|
||||||
libjpeg62-turbo \
|
libjpeg62-turbo \
|
||||||
libxpm4 \
|
libxpm4 \
|
||||||
libvpx1 \
|
libvpx4 \
|
||||||
libfreetype6 \
|
libfreetype6 \
|
||||||
libwebp-dev \
|
libwebp6 \
|
||||||
libmagickwand-6.q16-2 \
|
libmagickwand-6.q16-3 \
|
||||||
libc-client2007e \
|
libc-client2007e \
|
||||||
libfbclient2 \
|
libfbclient2 \
|
||||||
libicu52 \
|
libicu57 \
|
||||||
libmcrypt4 \
|
libmcrypt4 \
|
||||||
libmemcachedutil2 \
|
libmemcachedutil2 \
|
||||||
libsybdb5 \
|
libsybdb5 \
|
||||||
@@ -101,10 +102,10 @@ ENV RUN_DEPS \
|
|||||||
libaspell15 \
|
libaspell15 \
|
||||||
librecode0 \
|
librecode0 \
|
||||||
snmp \
|
snmp \
|
||||||
libnghttp2-5 \
|
libnghttp2-14 \
|
||||||
libtidy-0.99-0 \
|
libtidy5 \
|
||||||
libxslt1.1 \
|
libxslt1.1 \
|
||||||
libzip2 \
|
libzip4 \
|
||||||
ca-certificates
|
ca-certificates
|
||||||
|
|
||||||
|
|
||||||
@@ -117,6 +118,16 @@ RUN set -x \
|
|||||||
${BUILD_DEPS} \
|
${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 \
|
&& echo "/usr" | pecl install amqp \
|
||||||
&& docker-php-ext-enable amqp \
|
&& docker-php-ext-enable amqp \
|
||||||
&& pecl install apcu \
|
&& pecl install apcu \
|
||||||
@@ -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) mysqli \
|
||||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) opcache \
|
&& /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) pcntl \
|
||||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo \
|
|
||||||
&& ln -s /usr/lib/x86_64-linux-gnu/libsybdb.* /usr/lib/ \
|
&& 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_dblib \
|
||||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_firebird \
|
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_firebird \
|
||||||
@@ -189,7 +199,6 @@ RUN set -x \
|
|||||||
&& cd build && ./install \
|
&& cd build && ./install \
|
||||||
&& docker-php-ext-enable phalcon \
|
&& docker-php-ext-enable phalcon \
|
||||||
&& cd / && rm -rf /tmp/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) posix \
|
||||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pspell \
|
&& /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) 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-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) soap \
|
||||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sockets \
|
&& /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 \
|
&& 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) sysvmsg \
|
||||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvsem \
|
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvsem \
|
||||||
@@ -244,7 +253,7 @@ RUN set -x \
|
|||||||
${RUN_DEPS} \
|
${RUN_DEPS} \
|
||||||
&& rm -rf /var/lib/apt/lists/* \
|
&& rm -rf /var/lib/apt/lists/* \
|
||||||
&& update-ca-certificates \
|
&& 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-fpm -m | grep -oiE '^Zend Opcache$' \
|
||||||
&& php -m | grep -oiE '^pcntl$' \
|
&& php -m | grep -oiE '^pcntl$' \
|
||||||
&& php-fpm -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 -m | grep -oiE '^pdo_dblib$' \
|
||||||
&& php-fpm -m | grep -oiE '^pdo_dblib$' \
|
&& php-fpm -m | grep -oiE '^pdo_dblib$' \
|
||||||
&& php -m | grep -oiE '^pdo_firebird$' \
|
&& php -m | grep -oiE '^pdo_firebird$' \
|
||||||
@@ -341,8 +348,6 @@ RUN set -x \
|
|||||||
&& php-fpm -m | grep -oiE '^pgsql$' \
|
&& php-fpm -m | grep -oiE '^pgsql$' \
|
||||||
&& php -m | grep -oiE '^phalcon$' \
|
&& php -m | grep -oiE '^phalcon$' \
|
||||||
&& php-fpm -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 -m | grep -oiE '^posix$' \
|
||||||
&& php-fpm -m | grep -oiE '^posix$' \
|
&& php-fpm -m | grep -oiE '^posix$' \
|
||||||
&& php -m | grep -oiE '^pspell$' \
|
&& php -m | grep -oiE '^pspell$' \
|
||||||
|
|||||||
@@ -47,6 +47,7 @@ ENV BUILD_DEPS \
|
|||||||
zlib1g-dev \
|
zlib1g-dev \
|
||||||
libmemcached-dev \
|
libmemcached-dev \
|
||||||
libssl-dev \
|
libssl-dev \
|
||||||
|
libsasl2-dev \
|
||||||
freetds-dev \
|
freetds-dev \
|
||||||
libfbclient2 \
|
libfbclient2 \
|
||||||
libib-util \
|
libib-util \
|
||||||
@@ -80,18 +81,18 @@ ENV BUILD_DEPS \
|
|||||||
git
|
git
|
||||||
|
|
||||||
ENV RUN_DEPS \
|
ENV RUN_DEPS \
|
||||||
librabbitmq1 \
|
librabbitmq4 \
|
||||||
libenchant1c2a \
|
libenchant1c2a \
|
||||||
libpng12-0 \
|
libpng16-16 \
|
||||||
libjpeg62-turbo \
|
libjpeg62-turbo \
|
||||||
libxpm4 \
|
libxpm4 \
|
||||||
libvpx1 \
|
libvpx4 \
|
||||||
libfreetype6 \
|
libfreetype6 \
|
||||||
libwebp-dev \
|
libwebp6 \
|
||||||
libmagickwand-6.q16-2 \
|
libmagickwand-6.q16-3 \
|
||||||
libc-client2007e \
|
libc-client2007e \
|
||||||
libfbclient2 \
|
libfbclient2 \
|
||||||
libicu52 \
|
libicu57 \
|
||||||
libmcrypt4 \
|
libmcrypt4 \
|
||||||
libmemcachedutil2 \
|
libmemcachedutil2 \
|
||||||
libsybdb5 \
|
libsybdb5 \
|
||||||
@@ -101,10 +102,10 @@ ENV RUN_DEPS \
|
|||||||
libaspell15 \
|
libaspell15 \
|
||||||
librecode0 \
|
librecode0 \
|
||||||
snmp \
|
snmp \
|
||||||
libnghttp2-5 \
|
libnghttp2-14 \
|
||||||
libtidy-0.99-0 \
|
libtidy5 \
|
||||||
libxslt1.1 \
|
libxslt1.1 \
|
||||||
libzip2 \
|
libzip4 \
|
||||||
ca-certificates
|
ca-certificates
|
||||||
|
|
||||||
|
|
||||||
@@ -117,6 +118,16 @@ RUN set -x \
|
|||||||
${BUILD_DEPS} \
|
${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 \
|
&& echo "/usr" | pecl install amqp \
|
||||||
&& docker-php-ext-enable amqp \
|
&& docker-php-ext-enable amqp \
|
||||||
&& pecl install apcu \
|
&& pecl install apcu \
|
||||||
@@ -244,7 +255,7 @@ RUN set -x \
|
|||||||
${RUN_DEPS} \
|
${RUN_DEPS} \
|
||||||
&& rm -rf /var/lib/apt/lists/* \
|
&& rm -rf /var/lib/apt/lists/* \
|
||||||
&& update-ca-certificates \
|
&& 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 \
|
zlib1g-dev \
|
||||||
libmemcached-dev \
|
libmemcached-dev \
|
||||||
libssl-dev \
|
libssl-dev \
|
||||||
|
libsasl2-dev \
|
||||||
freetds-dev \
|
freetds-dev \
|
||||||
libfbclient2 \
|
libfbclient2 \
|
||||||
libib-util \
|
libib-util \
|
||||||
@@ -118,7 +119,17 @@ RUN set -x \
|
|||||||
${BUILD_DEPS} \
|
${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 \
|
&& docker-php-ext-enable amqp \
|
||||||
&& pecl install apcu \
|
&& pecl install apcu \
|
||||||
&& docker-php-ext-enable 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-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) xmlwriter \
|
||||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xsl \
|
&& /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 \
|
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) zip \
|
||||||
\
|
\
|
||||||
\
|
\
|
||||||
@@ -246,7 +258,7 @@ RUN set -x \
|
|||||||
${RUN_DEPS} \
|
${RUN_DEPS} \
|
||||||
&& rm -rf /var/lib/apt/lists/* \
|
&& rm -rf /var/lib/apt/lists/* \
|
||||||
&& update-ca-certificates \
|
&& 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
|
### Volumes
|
||||||
###
|
###
|
||||||
VOLUME /etc/php-custom.d
|
VOLUME /etc/php-custom.d
|
||||||
|
VOLUME /etc/php-fpm-custom.d
|
||||||
VOLUME /etc/php-modules.d
|
VOLUME /etc/php-modules.d
|
||||||
VOLUME /var/log/php
|
VOLUME /var/log/php
|
||||||
VOLUME /var/mail
|
VOLUME /var/mail
|
||||||
|
|||||||
@@ -58,6 +58,7 @@ COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
|||||||
### Volumes
|
### Volumes
|
||||||
###
|
###
|
||||||
VOLUME /etc/php-custom.d
|
VOLUME /etc/php-custom.d
|
||||||
|
VOLUME /etc/php-fpm-custom.d
|
||||||
VOLUME /etc/php-modules.d
|
VOLUME /etc/php-modules.d
|
||||||
VOLUME /var/log/php
|
VOLUME /var/log/php
|
||||||
VOLUME /var/mail
|
VOLUME /var/mail
|
||||||
|
|||||||
@@ -58,6 +58,7 @@ COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
|||||||
### Volumes
|
### Volumes
|
||||||
###
|
###
|
||||||
VOLUME /etc/php-custom.d
|
VOLUME /etc/php-custom.d
|
||||||
|
VOLUME /etc/php-fpm-custom.d
|
||||||
VOLUME /etc/php-modules.d
|
VOLUME /etc/php-modules.d
|
||||||
VOLUME /var/log/php
|
VOLUME /var/log/php
|
||||||
VOLUME /var/mail
|
VOLUME /var/mail
|
||||||
|
|||||||
@@ -58,6 +58,7 @@ COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
|||||||
### Volumes
|
### Volumes
|
||||||
###
|
###
|
||||||
VOLUME /etc/php-custom.d
|
VOLUME /etc/php-custom.d
|
||||||
|
VOLUME /etc/php-fpm-custom.d
|
||||||
VOLUME /etc/php-modules.d
|
VOLUME /etc/php-modules.d
|
||||||
VOLUME /var/log/php
|
VOLUME /var/log/php
|
||||||
VOLUME /var/mail
|
VOLUME /var/mail
|
||||||
|
|||||||
@@ -58,6 +58,7 @@ COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
|||||||
### Volumes
|
### Volumes
|
||||||
###
|
###
|
||||||
VOLUME /etc/php-custom.d
|
VOLUME /etc/php-custom.d
|
||||||
|
VOLUME /etc/php-fpm-custom.d
|
||||||
VOLUME /etc/php-modules.d
|
VOLUME /etc/php-modules.d
|
||||||
VOLUME /var/log/php
|
VOLUME /var/log/php
|
||||||
VOLUME /var/mail
|
VOLUME /var/mail
|
||||||
|
|||||||
@@ -58,6 +58,7 @@ COPY ./data/supervisord.conf /etc/supervisor/supervisord.conf
|
|||||||
### Volumes
|
### Volumes
|
||||||
###
|
###
|
||||||
VOLUME /etc/php-custom.d
|
VOLUME /etc/php-custom.d
|
||||||
|
VOLUME /etc/php-fpm-custom.d
|
||||||
VOLUME /etc/php-modules.d
|
VOLUME /etc/php-modules.d
|
||||||
VOLUME /var/log/php
|
VOLUME /var/log/php
|
||||||
VOLUME /var/mail
|
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"]
|
||||||
@@ -17,7 +17,9 @@ set_postfix() {
|
|||||||
local username="${2}"
|
local username="${2}"
|
||||||
local groupname="${3}"
|
local groupname="${3}"
|
||||||
local php_ini_dir="${4}"
|
local php_ini_dir="${4}"
|
||||||
local debug="${5}"
|
local php_mail_log="${5}"
|
||||||
|
local docker_logs="${6}"
|
||||||
|
local debug="${7}"
|
||||||
|
|
||||||
local php_ini_file="${php_ini_dir}/devilbox-runtime-sendmail.ini"
|
local php_ini_file="${php_ini_dir}/devilbox-runtime-sendmail.ini"
|
||||||
local catch_all=
|
local catch_all=
|
||||||
@@ -37,9 +39,23 @@ set_postfix() {
|
|||||||
echo "sendmail_path = $( which sendmail ) -t -i";
|
echo "sendmail_path = $( which sendmail ) -t -i";
|
||||||
echo ";mail.force_extra_parameters =";
|
echo ";mail.force_extra_parameters =";
|
||||||
echo "mail.add_x_header = On";
|
echo "mail.add_x_header = On";
|
||||||
echo "mail.log = /var/log/php/mail.log";
|
echo "mail.log = ${php_mail_log}";
|
||||||
} > "${php_ini_file}"
|
} > "${php_ini_file}"
|
||||||
|
|
||||||
|
# PHP mail function logs to file
|
||||||
|
if [ "${docker_logs}" != "1" ]; then
|
||||||
|
# Fix PHP mail log file dir/file and permissions
|
||||||
|
if [ ! -d "$( dirname "${php_mail_log}" )" ]; then
|
||||||
|
run "mkdir -p $( dirname "${php_mail_log}" )" "${debug}"
|
||||||
|
fi
|
||||||
|
if [ ! -f "${php_mail_log}" ]; then
|
||||||
|
run "touch ${php_mail_log}" "${debug}"
|
||||||
|
fi
|
||||||
|
run "chown ${username}:${groupname} $( dirname "${php_mail_log}" )" "${debug}"
|
||||||
|
run "chown ${username}:${groupname} ${php_mail_log}" "${debug}"
|
||||||
|
run "chmod 0644 ${php_mail_log}" "${debug}"
|
||||||
|
fi
|
||||||
|
|
||||||
# Add Mail dir/file if it does not exist
|
# Add Mail dir/file if it does not exist
|
||||||
if [ ! -d "/var/mail" ]; then
|
if [ ! -d "/var/mail" ]; then
|
||||||
run "mkdir /var/mail" "${debug}"
|
run "mkdir /var/mail" "${debug}"
|
||||||
|
|||||||
@@ -10,21 +10,26 @@ set -o pipefail
|
|||||||
############################################################
|
############################################################
|
||||||
|
|
||||||
_log_to_dockerlogs() {
|
_log_to_dockerlogs() {
|
||||||
local conf_logfile="${1}"
|
local php_fpm_conf="${1}"
|
||||||
|
local php_ini_conf="${2}"
|
||||||
{
|
{
|
||||||
echo "[global]"
|
echo "[global]"
|
||||||
echo "error_log = /proc/self/fd/2"
|
echo "error_log = /proc/self/fd/2"
|
||||||
echo "[www]"
|
echo "[www]"
|
||||||
echo "access.log = /proc/self/fd/2"
|
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() {
|
_log_to_files() {
|
||||||
local conf_logfile="${1}"
|
local php_fpm_conf="${1}"
|
||||||
local log_dir="${2}"
|
local php_ini_conf="${2}"
|
||||||
local user="${3}"
|
local log_dir="${3}"
|
||||||
local group="${4}"
|
local user="${4}"
|
||||||
local debug="${5}"
|
local group="${5}"
|
||||||
|
local debug="${6}"
|
||||||
|
|
||||||
# Create Log directory and files
|
# Create Log directory and files
|
||||||
if [ ! -d "${log_dir}" ]; then
|
if [ ! -d "${log_dir}" ]; then
|
||||||
@@ -43,7 +48,10 @@ _log_to_files() {
|
|||||||
echo "error_log = ${log_dir}/php-fpm.error"
|
echo "error_log = ${log_dir}/php-fpm.error"
|
||||||
echo "[www]"
|
echo "[www]"
|
||||||
echo "access.log = ${log_dir}/php-fpm.access"
|
echo "access.log = ${log_dir}/php-fpm.access"
|
||||||
} > "${conf_logfile}"
|
} > "${php_fpm_conf}"
|
||||||
|
{
|
||||||
|
echo "error_log = ${log_dir}/php-fpm.error"
|
||||||
|
} > "${php_ini_conf}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -51,23 +59,44 @@ _log_to_files() {
|
|||||||
# Functions
|
# Functions
|
||||||
############################################################
|
############################################################
|
||||||
|
|
||||||
|
###
|
||||||
|
### Get info if we log to docker logs
|
||||||
|
###
|
||||||
|
is_docker_logs_enabled() {
|
||||||
|
local env_varname="${1}"
|
||||||
|
if env_set "${env_varname}"; then
|
||||||
|
docker_logs="$( env_get "${env_varname}" )"
|
||||||
|
if [ "${docker_logs}" = "1" ]; then
|
||||||
|
# Use docker logs
|
||||||
|
echo "1"
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Use file based logging
|
||||||
|
echo "0"
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Change PHP-FPM logging (file or docker logs)
|
### Change PHP-FPM logging (file or docker logs)
|
||||||
###
|
###
|
||||||
set_docker_logs() {
|
set_docker_logs() {
|
||||||
local env_varname="${1}"
|
local env_varname="${1}"
|
||||||
local log_dir="${2}"
|
local log_dir="${2}"
|
||||||
local conf_logfile="${3}"
|
local php_fpm_conf="${3}"
|
||||||
local user="${4}"
|
local php_ini_conf="${4}"
|
||||||
local group="${5}"
|
local user="${5}"
|
||||||
local debug="${6}"
|
local group="${6}"
|
||||||
|
local debug="${7}"
|
||||||
|
|
||||||
local docker_logs=
|
local docker_logs=
|
||||||
|
|
||||||
if ! env_set "${env_varname}"; then
|
if ! env_set "${env_varname}"; then
|
||||||
log "info" "\$${env_varname} not set." "${debug}"
|
log "info" "\$${env_varname} not set." "${debug}"
|
||||||
log "info" "Logging to docker logs (stdout and stderr)." "${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
|
else
|
||||||
docker_logs="$( env_get "${env_varname}" )"
|
docker_logs="$( env_get "${env_varname}" )"
|
||||||
|
|
||||||
@@ -75,12 +104,12 @@ set_docker_logs() {
|
|||||||
if [ "${docker_logs}" = "0" ]; then
|
if [ "${docker_logs}" = "0" ]; then
|
||||||
log "info" "\$${env_varname} set to 0. Logging to files under: ${log_dir}" "${debug}"
|
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 "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
|
# Keep docker logs
|
||||||
elif [ "${docker_logs}" = "1" ]; then
|
elif [ "${docker_logs}" = "1" ]; then
|
||||||
log "info" "\$${env_varname} set to 1. Logging to docker logs (stdout and stderr)." "${debug}"
|
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
|
else
|
||||||
log "err" "Invalid value for \$${env_varname}. Can only be 0 or 1. Provided: ${docker_logs}" "${debug}"
|
log "err" "Invalid value for \$${env_varname}. Can only be 0 or 1. Provided: ${docker_logs}" "${debug}"
|
||||||
exit 1
|
exit 1
|
||||||
|
|||||||
@@ -27,8 +27,8 @@ copy_ini_files() {
|
|||||||
'
|
'
|
||||||
for ini_f in ${ini_files}; do
|
for ini_f in ${ini_files}; do
|
||||||
ini_name="$( basename "${ini_f}" )"
|
ini_name="$( basename "${ini_f}" )"
|
||||||
log "info" "PHP.ini: ${ini_name} -> ${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}/zzz-devilbox-${ini_name}" "${debug}"
|
run "cp ${ini_f} ${ini_dst}/yyy-devilbox-user-runtime-${ini_name}" "${debug}"
|
||||||
done
|
done
|
||||||
run "find ${ini_dst} -type f -iname '*.ini' -exec chmod 0644 \"{}\" \;" "${debug}"
|
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,8 +21,15 @@ CONFIG_DIR="/docker-entrypoint.d"
|
|||||||
# php.ini.d directory
|
# php.ini.d directory
|
||||||
PHP_INI_DIR="/usr/local/etc/php/conf.d"
|
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
|
# 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
|
# PHP-FPM log dir
|
||||||
FPM_LOG_DIR="/var/log/php"
|
FPM_LOG_DIR="/var/log/php"
|
||||||
@@ -30,6 +37,9 @@ FPM_LOG_DIR="/var/log/php"
|
|||||||
# Custom ini dir (to be copied to actual ini dir)
|
# Custom ini dir (to be copied to actual ini dir)
|
||||||
PHP_CUST_INI_DIR="/etc/php-custom.d"
|
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
|
# Supervisord config directory
|
||||||
SUPERVISOR_CONFD="/etc/supervisor/conf.d"
|
SUPERVISOR_CONFD="/etc/supervisor/conf.d"
|
||||||
|
|
||||||
@@ -70,9 +80,11 @@ set_timezone "TIMEZONE" "${PHP_INI_DIR}" "${DEBUG_LEVEL}"
|
|||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Setup postfix
|
### PHP-FPM 5.2 and PHP-FPM 5.3 Env variables fix
|
||||||
###
|
###
|
||||||
set_postfix "ENABLE_MAIL" "${MY_USER}" "${MY_GROUP}" "${PHP_INI_DIR}" "${DEBUG_LEVEL}"
|
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
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
@@ -81,12 +93,25 @@ set_postfix "ENABLE_MAIL" "${MY_USER}" "${MY_GROUP}" "${PHP_INI_DIR}" "${DEBUG_L
|
|||||||
set_docker_logs \
|
set_docker_logs \
|
||||||
"DOCKER_LOGS" \
|
"DOCKER_LOGS" \
|
||||||
"${FPM_LOG_DIR}" \
|
"${FPM_LOG_DIR}" \
|
||||||
"${FPM_CONF_LOGFILE}" \
|
"${PHP_FPM_CONF_LOGFILE}" \
|
||||||
|
"${PHP_INI_CONF_LOGFILE}" \
|
||||||
"${MY_USER}" \
|
"${MY_USER}" \
|
||||||
"${MY_GROUP}" \
|
"${MY_GROUP}" \
|
||||||
"${DEBUG_LEVEL}"
|
"${DEBUG_LEVEL}"
|
||||||
|
|
||||||
|
|
||||||
|
###
|
||||||
|
### Setup postfix
|
||||||
|
###
|
||||||
|
if is_docker_logs_enabled "DOCKER_LOGS" >/dev/null; then
|
||||||
|
# PHP mail function should log to stderr
|
||||||
|
set_postfix "ENABLE_MAIL" "${MY_USER}" "${MY_GROUP}" "${PHP_INI_DIR}" "/proc/self/fd/2" "1" "${DEBUG_LEVEL}"
|
||||||
|
else
|
||||||
|
# PHP mail function should log to file
|
||||||
|
set_postfix "ENABLE_MAIL" "${MY_USER}" "${MY_GROUP}" "${PHP_INI_DIR}" "${PHP_MAIL_LOG}" "0" "${DEBUG_LEVEL}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Validate socat port forwards
|
### Validate socat port forwards
|
||||||
###
|
###
|
||||||
@@ -131,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_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
|
### Startup
|
||||||
###
|
###
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ trap "postfix reload" SIGHUP
|
|||||||
postfix start
|
postfix start
|
||||||
|
|
||||||
# Capture output
|
# Capture output
|
||||||
tail -qF -n 0 "${MAILLOG}" &
|
tail -qF -n 0 "${MAILLOG}" 2>/dev/null &
|
||||||
tail_pid="${?}"
|
tail_pid="${?}"
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
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 \
|
autoconf \
|
||||||
automake \
|
automake \
|
||||||
bash-completion \
|
bash-completion \
|
||||||
|
build-essential \
|
||||||
bzip2 \
|
bzip2 \
|
||||||
coreutils \
|
coreutils \
|
||||||
curl \
|
curl \
|
||||||
@@ -62,6 +63,9 @@ RUN set -x \
|
|||||||
iputils-ping \
|
iputils-ping \
|
||||||
less \
|
less \
|
||||||
libc-dev \
|
libc-dev \
|
||||||
|
libffi-dev\
|
||||||
|
libssl-dev\
|
||||||
|
libyaml-dev \
|
||||||
make \
|
make \
|
||||||
mongodb-org-shell \
|
mongodb-org-shell \
|
||||||
mongodb-org-tools \
|
mongodb-org-tools \
|
||||||
@@ -71,8 +75,14 @@ RUN set -x \
|
|||||||
net-tools \
|
net-tools \
|
||||||
netcat \
|
netcat \
|
||||||
nodejs \
|
nodejs \
|
||||||
|
openssh-client \
|
||||||
|
patch \
|
||||||
postgresql-client \
|
postgresql-client \
|
||||||
|
python-cffi \
|
||||||
|
python-dev \
|
||||||
python-pip \
|
python-pip \
|
||||||
|
python-wheel \
|
||||||
|
redis-tools \
|
||||||
rubygems \
|
rubygems \
|
||||||
ruby-dev \
|
ruby-dev \
|
||||||
shellcheck \
|
shellcheck \
|
||||||
@@ -93,6 +103,10 @@ RUN set -x \
|
|||||||
RUN set -x \
|
RUN set -x \
|
||||||
# composer
|
# composer
|
||||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||||
|
# ansible
|
||||||
|
&& pip install --upgrade setuptools \
|
||||||
|
&& pip install ansible \
|
||||||
|
\
|
||||||
# awesomeci
|
# awesomeci
|
||||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||||
&& cd /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 mdlint \
|
||||||
&& npm install -g gulp \
|
&& 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
|
# drush
|
||||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||||
&& cd /usr/local/src/drush \
|
&& cd /usr/local/src/drush \
|
||||||
@@ -142,18 +160,27 @@ RUN set -x \
|
|||||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
&& 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
|
# linuxbrew
|
||||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
&& 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}' \
|
'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 \
|
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||||
'echo "export MANPATH=/usr/local/src/linuxbrew/share/man:${MANPATH}" >> /home/devilbox/${v}' \
|
'echo "export MANPATH=/usr/local/src/linuxbrew/share/man:${MANPATH}" >> /home/devilbox/${v}' \
|
||||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||||
'echo "export INFOPATH=/usr/local/src/linuxbrew/share/man:${INFOPATH}" >> /home/devilbox/${v}' \
|
'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 update' \
|
||||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew config' \
|
&& 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
|
# mysqldumpsecure
|
||||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||||
&& cd /usr/local/src/mysqldump-secure \
|
&& cd /usr/local/src/mysqldump-secure \
|
||||||
@@ -187,6 +214,20 @@ RUN set -x \
|
|||||||
&& cd / \
|
&& cd / \
|
||||||
&& rm -rf /usr/local/src/phalcon-devtools/.git \
|
&& 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
|
# symfony
|
||||||
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
||||||
&& chmod +x /usr/local/bin/symfony \
|
&& chmod +x /usr/local/bin/symfony \
|
||||||
@@ -195,6 +236,10 @@ RUN set -x \
|
|||||||
# wpcli
|
# wpcli
|
||||||
&& curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -L -o /usr/local/bin/wp \
|
&& 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 \
|
&& 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
|
# cleanup
|
||||||
&& rm -rf /home/${MY_USER}/.*json \
|
&& rm -rf /home/${MY_USER}/.*json \
|
||||||
&& rm -rf /home/${MY_USER}/.cache \
|
&& 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 "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||||
echo "export PATH"; \
|
echo "export PATH"; \
|
||||||
echo ". /etc/bash-devilbox"; \
|
echo ". /etc/bash-devilbox"; \
|
||||||
echo "if [ -d /etc/bash-custom.d/ ]; then"; \
|
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||||
echo " for f in /etc/bash-custom.d/*.sh ; do"; \
|
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||||
echo " if [ -r \"\${f}\" ]; then"; \
|
echo " if [ -r \"\${f}\" ]; then"; \
|
||||||
echo " . \"\${f}\""; \
|
echo " . \"\${f}\""; \
|
||||||
echo " fi"; \
|
echo " fi"; \
|
||||||
@@ -250,6 +295,7 @@ RUN set -x \
|
|||||||
|
|
||||||
RUN set -x \
|
RUN set -x \
|
||||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||||
|
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||||
&& mdl --version | grep -E '[.0-9]+' \
|
&& mdl --version | grep -E '[.0-9]+' \
|
||||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||||
&& eslint -v | grep -E '[.0-9]+' \
|
&& eslint -v | grep -E '[.0-9]+' \
|
||||||
@@ -257,33 +303,45 @@ RUN set -x \
|
|||||||
&& mdlint --version | grep -E '[.0-9]+' \
|
&& mdlint --version | grep -E '[.0-9]+' \
|
||||||
&& gulp --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]+' \
|
&& drush --version | grep -E '[.0-9]+' \
|
||||||
&& git-flow version | grep -E '[.0-9]+' \
|
&& git-flow version | grep -E '[.0-9]+' \
|
||||||
&& grunt --version | grep -E '[.0-9]+' \
|
&& grunt --version | grep -E '[.0-9]+' \
|
||||||
&& laravel --version | grep -E '(Installer|version)\s*[.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]+' \
|
&& 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]+' \
|
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||||
&& phalcon commands | grep -E '[.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]+' \
|
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||||
&& webpack --version | grep -E '[.0-9]+' \
|
&& webpack --version | grep -E '[.0-9]+' \
|
||||||
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
||||||
|
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
|
||||||
&& true
|
&& true
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Copy files
|
### 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.sh /docker-entrypoint.sh
|
||||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Volumes
|
### Volumes
|
||||||
###
|
###
|
||||||
VOLUME /etc/bash-custom.d
|
VOLUME /etc/bashrc-devilbox.d
|
||||||
VOLUME /etc/php-custom.d
|
VOLUME /etc/php-custom.d
|
||||||
|
VOLUME /etc/php-fpm-custom.d
|
||||||
VOLUME /etc/php-modules.d
|
VOLUME /etc/php-modules.d
|
||||||
VOLUME /shared/backups
|
VOLUME /shared/backups
|
||||||
VOLUME /var/log/php
|
VOLUME /var/log/php
|
||||||
|
|||||||
@@ -46,6 +46,7 @@ RUN set -x \
|
|||||||
autoconf \
|
autoconf \
|
||||||
automake \
|
automake \
|
||||||
bash-completion \
|
bash-completion \
|
||||||
|
build-essential \
|
||||||
bzip2 \
|
bzip2 \
|
||||||
coreutils \
|
coreutils \
|
||||||
curl \
|
curl \
|
||||||
@@ -62,6 +63,9 @@ RUN set -x \
|
|||||||
iputils-ping \
|
iputils-ping \
|
||||||
less \
|
less \
|
||||||
libc-dev \
|
libc-dev \
|
||||||
|
libffi-dev\
|
||||||
|
libssl-dev\
|
||||||
|
libyaml-dev \
|
||||||
make \
|
make \
|
||||||
mongodb-org-shell \
|
mongodb-org-shell \
|
||||||
mongodb-org-tools \
|
mongodb-org-tools \
|
||||||
@@ -71,8 +75,14 @@ RUN set -x \
|
|||||||
net-tools \
|
net-tools \
|
||||||
netcat \
|
netcat \
|
||||||
nodejs \
|
nodejs \
|
||||||
|
openssh-client \
|
||||||
|
patch \
|
||||||
postgresql-client \
|
postgresql-client \
|
||||||
|
python-cffi \
|
||||||
|
python-dev \
|
||||||
python-pip \
|
python-pip \
|
||||||
|
python-wheel \
|
||||||
|
redis-tools \
|
||||||
rubygems \
|
rubygems \
|
||||||
ruby-dev \
|
ruby-dev \
|
||||||
shellcheck \
|
shellcheck \
|
||||||
@@ -93,6 +103,10 @@ RUN set -x \
|
|||||||
RUN set -x \
|
RUN set -x \
|
||||||
# composer
|
# composer
|
||||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||||
|
# ansible
|
||||||
|
&& pip install --upgrade setuptools \
|
||||||
|
&& pip install ansible \
|
||||||
|
\
|
||||||
# awesomeci
|
# awesomeci
|
||||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||||
&& cd /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 mdlint \
|
||||||
&& npm install -g gulp \
|
&& 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
|
# drush
|
||||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||||
&& cd /usr/local/src/drush \
|
&& cd /usr/local/src/drush \
|
||||||
@@ -145,18 +163,27 @@ RUN set -x \
|
|||||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
&& 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
|
# linuxbrew
|
||||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
&& 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}' \
|
'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 \
|
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||||
'echo "export MANPATH=/usr/local/src/linuxbrew/share/man:${MANPATH}" >> /home/devilbox/${v}' \
|
'echo "export MANPATH=/usr/local/src/linuxbrew/share/man:${MANPATH}" >> /home/devilbox/${v}' \
|
||||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||||
'echo "export INFOPATH=/usr/local/src/linuxbrew/share/man:${INFOPATH}" >> /home/devilbox/${v}' \
|
'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 update' \
|
||||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew config' \
|
&& 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
|
# mysqldumpsecure
|
||||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||||
&& cd /usr/local/src/mysqldump-secure \
|
&& cd /usr/local/src/mysqldump-secure \
|
||||||
@@ -190,6 +217,24 @@ RUN set -x \
|
|||||||
&& cd / \
|
&& cd / \
|
||||||
&& rm -rf /usr/local/src/phalcon-devtools/.git \
|
&& 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
|
# symfony
|
||||||
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
||||||
&& chmod +x /usr/local/bin/symfony \
|
&& chmod +x /usr/local/bin/symfony \
|
||||||
@@ -198,6 +243,10 @@ RUN set -x \
|
|||||||
# wpcli
|
# wpcli
|
||||||
&& curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -L -o /usr/local/bin/wp \
|
&& 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 \
|
&& 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
|
# cleanup
|
||||||
&& rm -rf /home/${MY_USER}/.*json \
|
&& rm -rf /home/${MY_USER}/.*json \
|
||||||
&& rm -rf /home/${MY_USER}/.cache \
|
&& 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 "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||||
echo "export PATH"; \
|
echo "export PATH"; \
|
||||||
echo ". /etc/bash-devilbox"; \
|
echo ". /etc/bash-devilbox"; \
|
||||||
echo "if [ -d /etc/bash-custom.d/ ]; then"; \
|
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||||
echo " for f in /etc/bash-custom.d/*.sh ; do"; \
|
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||||
echo " if [ -r \"\${f}\" ]; then"; \
|
echo " if [ -r \"\${f}\" ]; then"; \
|
||||||
echo " . \"\${f}\""; \
|
echo " . \"\${f}\""; \
|
||||||
echo " fi"; \
|
echo " fi"; \
|
||||||
@@ -253,6 +302,7 @@ RUN set -x \
|
|||||||
|
|
||||||
RUN set -x \
|
RUN set -x \
|
||||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||||
|
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||||
&& mdl --version | grep -E '[.0-9]+' \
|
&& mdl --version | grep -E '[.0-9]+' \
|
||||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||||
&& eslint -v | grep -E '[.0-9]+' \
|
&& eslint -v | grep -E '[.0-9]+' \
|
||||||
@@ -260,34 +310,47 @@ RUN set -x \
|
|||||||
&& mdlint --version | grep -E '[.0-9]+' \
|
&& mdlint --version | grep -E '[.0-9]+' \
|
||||||
&& gulp --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]+' \
|
&& drush --version | grep -E '[.0-9]+' \
|
||||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||||
&& git-flow version | grep -E '[.0-9]+' \
|
&& git-flow version | grep -E '[.0-9]+' \
|
||||||
&& grunt --version | grep -E '[.0-9]+' \
|
&& grunt --version | grep -E '[.0-9]+' \
|
||||||
&& laravel --version | grep -E '(Installer|version)\s*[.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]+' \
|
&& 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]+' \
|
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||||
&& phalcon commands | grep -E '[.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]+' \
|
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||||
&& webpack --version | grep -E '[.0-9]+' \
|
&& webpack --version | grep -E '[.0-9]+' \
|
||||||
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
||||||
|
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
|
||||||
&& true
|
&& true
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Copy files
|
### 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.sh /docker-entrypoint.sh
|
||||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Volumes
|
### Volumes
|
||||||
###
|
###
|
||||||
VOLUME /etc/bash-custom.d
|
VOLUME /etc/bashrc-devilbox.d
|
||||||
VOLUME /etc/php-custom.d
|
VOLUME /etc/php-custom.d
|
||||||
|
VOLUME /etc/php-fpm-custom.d
|
||||||
VOLUME /etc/php-modules.d
|
VOLUME /etc/php-modules.d
|
||||||
VOLUME /shared/backups
|
VOLUME /shared/backups
|
||||||
VOLUME /var/log/php
|
VOLUME /var/log/php
|
||||||
|
|||||||
@@ -46,6 +46,7 @@ RUN set -x \
|
|||||||
autoconf \
|
autoconf \
|
||||||
automake \
|
automake \
|
||||||
bash-completion \
|
bash-completion \
|
||||||
|
build-essential \
|
||||||
bzip2 \
|
bzip2 \
|
||||||
coreutils \
|
coreutils \
|
||||||
curl \
|
curl \
|
||||||
@@ -62,6 +63,9 @@ RUN set -x \
|
|||||||
iputils-ping \
|
iputils-ping \
|
||||||
less \
|
less \
|
||||||
libc-dev \
|
libc-dev \
|
||||||
|
libffi-dev\
|
||||||
|
libssl-dev\
|
||||||
|
libyaml-dev \
|
||||||
make \
|
make \
|
||||||
mongodb-org-shell \
|
mongodb-org-shell \
|
||||||
mongodb-org-tools \
|
mongodb-org-tools \
|
||||||
@@ -71,8 +75,14 @@ RUN set -x \
|
|||||||
net-tools \
|
net-tools \
|
||||||
netcat \
|
netcat \
|
||||||
nodejs \
|
nodejs \
|
||||||
|
openssh-client \
|
||||||
|
patch \
|
||||||
postgresql-client \
|
postgresql-client \
|
||||||
|
python-cffi \
|
||||||
|
python-dev \
|
||||||
python-pip \
|
python-pip \
|
||||||
|
python-wheel \
|
||||||
|
redis-tools \
|
||||||
rubygems \
|
rubygems \
|
||||||
ruby-dev \
|
ruby-dev \
|
||||||
shellcheck \
|
shellcheck \
|
||||||
@@ -93,6 +103,10 @@ RUN set -x \
|
|||||||
RUN set -x \
|
RUN set -x \
|
||||||
# composer
|
# composer
|
||||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||||
|
# ansible
|
||||||
|
&& pip install --upgrade setuptools \
|
||||||
|
&& pip install ansible \
|
||||||
|
\
|
||||||
# awesomeci
|
# awesomeci
|
||||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||||
&& cd /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 mdlint \
|
||||||
&& npm install -g gulp \
|
&& 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
|
# drush
|
||||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||||
&& cd /usr/local/src/drush \
|
&& cd /usr/local/src/drush \
|
||||||
@@ -145,18 +163,27 @@ RUN set -x \
|
|||||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
&& 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
|
# linuxbrew
|
||||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
&& 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}' \
|
'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 \
|
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||||
'echo "export MANPATH=/usr/local/src/linuxbrew/share/man:${MANPATH}" >> /home/devilbox/${v}' \
|
'echo "export MANPATH=/usr/local/src/linuxbrew/share/man:${MANPATH}" >> /home/devilbox/${v}' \
|
||||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||||
'echo "export INFOPATH=/usr/local/src/linuxbrew/share/man:${INFOPATH}" >> /home/devilbox/${v}' \
|
'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 update' \
|
||||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew config' \
|
&& 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
|
# mysqldumpsecure
|
||||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||||
&& cd /usr/local/src/mysqldump-secure \
|
&& cd /usr/local/src/mysqldump-secure \
|
||||||
@@ -190,6 +217,24 @@ RUN set -x \
|
|||||||
&& cd / \
|
&& cd / \
|
||||||
&& rm -rf /usr/local/src/phalcon-devtools/.git \
|
&& 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
|
# symfony
|
||||||
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
||||||
&& chmod +x /usr/local/bin/symfony \
|
&& chmod +x /usr/local/bin/symfony \
|
||||||
@@ -198,6 +243,10 @@ RUN set -x \
|
|||||||
# wpcli
|
# wpcli
|
||||||
&& curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -L -o /usr/local/bin/wp \
|
&& 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 \
|
&& 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
|
# cleanup
|
||||||
&& rm -rf /home/${MY_USER}/.*json \
|
&& rm -rf /home/${MY_USER}/.*json \
|
||||||
&& rm -rf /home/${MY_USER}/.cache \
|
&& 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 "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||||
echo "export PATH"; \
|
echo "export PATH"; \
|
||||||
echo ". /etc/bash-devilbox"; \
|
echo ". /etc/bash-devilbox"; \
|
||||||
echo "if [ -d /etc/bash-custom.d/ ]; then"; \
|
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||||
echo " for f in /etc/bash-custom.d/*.sh ; do"; \
|
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||||
echo " if [ -r \"\${f}\" ]; then"; \
|
echo " if [ -r \"\${f}\" ]; then"; \
|
||||||
echo " . \"\${f}\""; \
|
echo " . \"\${f}\""; \
|
||||||
echo " fi"; \
|
echo " fi"; \
|
||||||
@@ -253,6 +302,7 @@ RUN set -x \
|
|||||||
|
|
||||||
RUN set -x \
|
RUN set -x \
|
||||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||||
|
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||||
&& mdl --version | grep -E '[.0-9]+' \
|
&& mdl --version | grep -E '[.0-9]+' \
|
||||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||||
&& eslint -v | grep -E '[.0-9]+' \
|
&& eslint -v | grep -E '[.0-9]+' \
|
||||||
@@ -260,34 +310,47 @@ RUN set -x \
|
|||||||
&& mdlint --version | grep -E '[.0-9]+' \
|
&& mdlint --version | grep -E '[.0-9]+' \
|
||||||
&& gulp --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]+' \
|
&& drush --version | grep -E '[.0-9]+' \
|
||||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||||
&& git-flow version | grep -E '[.0-9]+' \
|
&& git-flow version | grep -E '[.0-9]+' \
|
||||||
&& grunt --version | grep -E '[.0-9]+' \
|
&& grunt --version | grep -E '[.0-9]+' \
|
||||||
&& laravel --version | grep -E '(Installer|version)\s*[.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]+' \
|
&& 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]+' \
|
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||||
&& phalcon commands | grep -E '[.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]+' \
|
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||||
&& webpack --version | grep -E '[.0-9]+' \
|
&& webpack --version | grep -E '[.0-9]+' \
|
||||||
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
||||||
|
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
|
||||||
&& true
|
&& true
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Copy files
|
### 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.sh /docker-entrypoint.sh
|
||||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Volumes
|
### Volumes
|
||||||
###
|
###
|
||||||
VOLUME /etc/bash-custom.d
|
VOLUME /etc/bashrc-devilbox.d
|
||||||
VOLUME /etc/php-custom.d
|
VOLUME /etc/php-custom.d
|
||||||
|
VOLUME /etc/php-fpm-custom.d
|
||||||
VOLUME /etc/php-modules.d
|
VOLUME /etc/php-modules.d
|
||||||
VOLUME /shared/backups
|
VOLUME /shared/backups
|
||||||
VOLUME /var/log/php
|
VOLUME /var/log/php
|
||||||
|
|||||||
@@ -46,6 +46,7 @@ RUN set -x \
|
|||||||
autoconf \
|
autoconf \
|
||||||
automake \
|
automake \
|
||||||
bash-completion \
|
bash-completion \
|
||||||
|
build-essential \
|
||||||
bzip2 \
|
bzip2 \
|
||||||
coreutils \
|
coreutils \
|
||||||
curl \
|
curl \
|
||||||
@@ -62,6 +63,9 @@ RUN set -x \
|
|||||||
iputils-ping \
|
iputils-ping \
|
||||||
less \
|
less \
|
||||||
libc-dev \
|
libc-dev \
|
||||||
|
libffi-dev\
|
||||||
|
libssl-dev\
|
||||||
|
libyaml-dev \
|
||||||
make \
|
make \
|
||||||
mongodb-org-shell \
|
mongodb-org-shell \
|
||||||
mongodb-org-tools \
|
mongodb-org-tools \
|
||||||
@@ -71,8 +75,14 @@ RUN set -x \
|
|||||||
net-tools \
|
net-tools \
|
||||||
netcat \
|
netcat \
|
||||||
nodejs \
|
nodejs \
|
||||||
|
openssh-client \
|
||||||
|
patch \
|
||||||
postgresql-client \
|
postgresql-client \
|
||||||
|
python-cffi \
|
||||||
|
python-dev \
|
||||||
python-pip \
|
python-pip \
|
||||||
|
python-wheel \
|
||||||
|
redis-tools \
|
||||||
rubygems \
|
rubygems \
|
||||||
ruby-dev \
|
ruby-dev \
|
||||||
shellcheck \
|
shellcheck \
|
||||||
@@ -93,6 +103,10 @@ RUN set -x \
|
|||||||
RUN set -x \
|
RUN set -x \
|
||||||
# composer
|
# composer
|
||||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||||
|
# ansible
|
||||||
|
&& pip install --upgrade setuptools \
|
||||||
|
&& pip install ansible \
|
||||||
|
\
|
||||||
# awesomeci
|
# awesomeci
|
||||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||||
&& cd /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 mdlint \
|
||||||
&& npm install -g gulp \
|
&& 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
|
# drush
|
||||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||||
&& cd /usr/local/src/drush \
|
&& cd /usr/local/src/drush \
|
||||||
@@ -145,18 +163,27 @@ RUN set -x \
|
|||||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
&& 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
|
# linuxbrew
|
||||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
&& 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}' \
|
'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 \
|
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||||
'echo "export MANPATH=/usr/local/src/linuxbrew/share/man:${MANPATH}" >> /home/devilbox/${v}' \
|
'echo "export MANPATH=/usr/local/src/linuxbrew/share/man:${MANPATH}" >> /home/devilbox/${v}' \
|
||||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||||
'echo "export INFOPATH=/usr/local/src/linuxbrew/share/man:${INFOPATH}" >> /home/devilbox/${v}' \
|
'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 update' \
|
||||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew config' \
|
&& 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
|
# mysqldumpsecure
|
||||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||||
&& cd /usr/local/src/mysqldump-secure \
|
&& cd /usr/local/src/mysqldump-secure \
|
||||||
@@ -190,6 +217,24 @@ RUN set -x \
|
|||||||
&& cd / \
|
&& cd / \
|
||||||
&& rm -rf /usr/local/src/phalcon-devtools/.git \
|
&& 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
|
# symfony
|
||||||
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
||||||
&& chmod +x /usr/local/bin/symfony \
|
&& chmod +x /usr/local/bin/symfony \
|
||||||
@@ -198,6 +243,10 @@ RUN set -x \
|
|||||||
# wpcli
|
# wpcli
|
||||||
&& curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -L -o /usr/local/bin/wp \
|
&& 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 \
|
&& 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
|
# cleanup
|
||||||
&& rm -rf /home/${MY_USER}/.*json \
|
&& rm -rf /home/${MY_USER}/.*json \
|
||||||
&& rm -rf /home/${MY_USER}/.cache \
|
&& 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 "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||||
echo "export PATH"; \
|
echo "export PATH"; \
|
||||||
echo ". /etc/bash-devilbox"; \
|
echo ". /etc/bash-devilbox"; \
|
||||||
echo "if [ -d /etc/bash-custom.d/ ]; then"; \
|
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||||
echo " for f in /etc/bash-custom.d/*.sh ; do"; \
|
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||||
echo " if [ -r \"\${f}\" ]; then"; \
|
echo " if [ -r \"\${f}\" ]; then"; \
|
||||||
echo " . \"\${f}\""; \
|
echo " . \"\${f}\""; \
|
||||||
echo " fi"; \
|
echo " fi"; \
|
||||||
@@ -253,6 +302,7 @@ RUN set -x \
|
|||||||
|
|
||||||
RUN set -x \
|
RUN set -x \
|
||||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||||
|
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||||
&& mdl --version | grep -E '[.0-9]+' \
|
&& mdl --version | grep -E '[.0-9]+' \
|
||||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||||
&& eslint -v | grep -E '[.0-9]+' \
|
&& eslint -v | grep -E '[.0-9]+' \
|
||||||
@@ -260,34 +310,47 @@ RUN set -x \
|
|||||||
&& mdlint --version | grep -E '[.0-9]+' \
|
&& mdlint --version | grep -E '[.0-9]+' \
|
||||||
&& gulp --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]+' \
|
&& drush --version | grep -E '[.0-9]+' \
|
||||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||||
&& git-flow version | grep -E '[.0-9]+' \
|
&& git-flow version | grep -E '[.0-9]+' \
|
||||||
&& grunt --version | grep -E '[.0-9]+' \
|
&& grunt --version | grep -E '[.0-9]+' \
|
||||||
&& laravel --version | grep -E '(Installer|version)\s*[.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]+' \
|
&& 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]+' \
|
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||||
&& phalcon commands | grep -E '[.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]+' \
|
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||||
&& webpack --version | grep -E '[.0-9]+' \
|
&& webpack --version | grep -E '[.0-9]+' \
|
||||||
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
||||||
|
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
|
||||||
&& true
|
&& true
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Copy files
|
### 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.sh /docker-entrypoint.sh
|
||||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Volumes
|
### Volumes
|
||||||
###
|
###
|
||||||
VOLUME /etc/bash-custom.d
|
VOLUME /etc/bashrc-devilbox.d
|
||||||
VOLUME /etc/php-custom.d
|
VOLUME /etc/php-custom.d
|
||||||
|
VOLUME /etc/php-fpm-custom.d
|
||||||
VOLUME /etc/php-modules.d
|
VOLUME /etc/php-modules.d
|
||||||
VOLUME /shared/backups
|
VOLUME /shared/backups
|
||||||
VOLUME /var/log/php
|
VOLUME /var/log/php
|
||||||
|
|||||||
@@ -46,6 +46,7 @@ RUN set -x \
|
|||||||
autoconf \
|
autoconf \
|
||||||
automake \
|
automake \
|
||||||
bash-completion \
|
bash-completion \
|
||||||
|
build-essential \
|
||||||
bzip2 \
|
bzip2 \
|
||||||
coreutils \
|
coreutils \
|
||||||
curl \
|
curl \
|
||||||
@@ -62,6 +63,9 @@ RUN set -x \
|
|||||||
iputils-ping \
|
iputils-ping \
|
||||||
less \
|
less \
|
||||||
libc-dev \
|
libc-dev \
|
||||||
|
libffi-dev\
|
||||||
|
libssl-dev\
|
||||||
|
libyaml-dev \
|
||||||
make \
|
make \
|
||||||
mongodb-org-shell \
|
mongodb-org-shell \
|
||||||
mongodb-org-tools \
|
mongodb-org-tools \
|
||||||
@@ -71,8 +75,14 @@ RUN set -x \
|
|||||||
net-tools \
|
net-tools \
|
||||||
netcat \
|
netcat \
|
||||||
nodejs \
|
nodejs \
|
||||||
|
openssh-client \
|
||||||
|
patch \
|
||||||
postgresql-client \
|
postgresql-client \
|
||||||
|
python-cffi \
|
||||||
|
python-dev \
|
||||||
python-pip \
|
python-pip \
|
||||||
|
python-wheel \
|
||||||
|
redis-tools \
|
||||||
rubygems \
|
rubygems \
|
||||||
ruby-dev \
|
ruby-dev \
|
||||||
shellcheck \
|
shellcheck \
|
||||||
@@ -93,6 +103,10 @@ RUN set -x \
|
|||||||
RUN set -x \
|
RUN set -x \
|
||||||
# composer
|
# composer
|
||||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||||
|
# ansible
|
||||||
|
&& pip install --upgrade setuptools \
|
||||||
|
&& pip install ansible \
|
||||||
|
\
|
||||||
# awesomeci
|
# awesomeci
|
||||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||||
&& cd /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 mdlint \
|
||||||
&& npm install -g gulp \
|
&& 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
|
# drush
|
||||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||||
&& cd /usr/local/src/drush \
|
&& cd /usr/local/src/drush \
|
||||||
@@ -145,18 +163,27 @@ RUN set -x \
|
|||||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
&& 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
|
# linuxbrew
|
||||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
&& 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}' \
|
'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 \
|
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||||
'echo "export MANPATH=/usr/local/src/linuxbrew/share/man:${MANPATH}" >> /home/devilbox/${v}' \
|
'echo "export MANPATH=/usr/local/src/linuxbrew/share/man:${MANPATH}" >> /home/devilbox/${v}' \
|
||||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||||
'echo "export INFOPATH=/usr/local/src/linuxbrew/share/man:${INFOPATH}" >> /home/devilbox/${v}' \
|
'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 update' \
|
||||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew config' \
|
&& 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
|
# mysqldumpsecure
|
||||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||||
&& cd /usr/local/src/mysqldump-secure \
|
&& cd /usr/local/src/mysqldump-secure \
|
||||||
@@ -190,6 +217,24 @@ RUN set -x \
|
|||||||
&& cd / \
|
&& cd / \
|
||||||
&& rm -rf /usr/local/src/phalcon-devtools/.git \
|
&& 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
|
# symfony
|
||||||
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
||||||
&& chmod +x /usr/local/bin/symfony \
|
&& chmod +x /usr/local/bin/symfony \
|
||||||
@@ -198,6 +243,10 @@ RUN set -x \
|
|||||||
# wpcli
|
# wpcli
|
||||||
&& curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -L -o /usr/local/bin/wp \
|
&& 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 \
|
&& 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
|
# cleanup
|
||||||
&& rm -rf /home/${MY_USER}/.*json \
|
&& rm -rf /home/${MY_USER}/.*json \
|
||||||
&& rm -rf /home/${MY_USER}/.cache \
|
&& 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 "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||||
echo "export PATH"; \
|
echo "export PATH"; \
|
||||||
echo ". /etc/bash-devilbox"; \
|
echo ". /etc/bash-devilbox"; \
|
||||||
echo "if [ -d /etc/bash-custom.d/ ]; then"; \
|
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||||
echo " for f in /etc/bash-custom.d/*.sh ; do"; \
|
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||||
echo " if [ -r \"\${f}\" ]; then"; \
|
echo " if [ -r \"\${f}\" ]; then"; \
|
||||||
echo " . \"\${f}\""; \
|
echo " . \"\${f}\""; \
|
||||||
echo " fi"; \
|
echo " fi"; \
|
||||||
@@ -253,6 +302,7 @@ RUN set -x \
|
|||||||
|
|
||||||
RUN set -x \
|
RUN set -x \
|
||||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||||
|
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||||
&& mdl --version | grep -E '[.0-9]+' \
|
&& mdl --version | grep -E '[.0-9]+' \
|
||||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||||
&& eslint -v | grep -E '[.0-9]+' \
|
&& eslint -v | grep -E '[.0-9]+' \
|
||||||
@@ -260,34 +310,47 @@ RUN set -x \
|
|||||||
&& mdlint --version | grep -E '[.0-9]+' \
|
&& mdlint --version | grep -E '[.0-9]+' \
|
||||||
&& gulp --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]+' \
|
&& drush --version | grep -E '[.0-9]+' \
|
||||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||||
&& git-flow version | grep -E '[.0-9]+' \
|
&& git-flow version | grep -E '[.0-9]+' \
|
||||||
&& grunt --version | grep -E '[.0-9]+' \
|
&& grunt --version | grep -E '[.0-9]+' \
|
||||||
&& laravel --version | grep -E '(Installer|version)\s*[.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]+' \
|
&& 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]+' \
|
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||||
&& phalcon commands | grep -E '[.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]+' \
|
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||||
&& webpack --version | grep -E '[.0-9]+' \
|
&& webpack --version | grep -E '[.0-9]+' \
|
||||||
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
||||||
|
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
|
||||||
&& true
|
&& true
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Copy files
|
### 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.sh /docker-entrypoint.sh
|
||||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Volumes
|
### Volumes
|
||||||
###
|
###
|
||||||
VOLUME /etc/bash-custom.d
|
VOLUME /etc/bashrc-devilbox.d
|
||||||
VOLUME /etc/php-custom.d
|
VOLUME /etc/php-custom.d
|
||||||
|
VOLUME /etc/php-fpm-custom.d
|
||||||
VOLUME /etc/php-modules.d
|
VOLUME /etc/php-modules.d
|
||||||
VOLUME /shared/backups
|
VOLUME /shared/backups
|
||||||
VOLUME /var/log/php
|
VOLUME /var/log/php
|
||||||
|
|||||||
@@ -46,6 +46,7 @@ RUN set -x \
|
|||||||
autoconf \
|
autoconf \
|
||||||
automake \
|
automake \
|
||||||
bash-completion \
|
bash-completion \
|
||||||
|
build-essential \
|
||||||
bzip2 \
|
bzip2 \
|
||||||
coreutils \
|
coreutils \
|
||||||
curl \
|
curl \
|
||||||
@@ -62,6 +63,9 @@ RUN set -x \
|
|||||||
iputils-ping \
|
iputils-ping \
|
||||||
less \
|
less \
|
||||||
libc-dev \
|
libc-dev \
|
||||||
|
libffi-dev\
|
||||||
|
libssl-dev\
|
||||||
|
libyaml-dev \
|
||||||
make \
|
make \
|
||||||
mongodb-org-shell \
|
mongodb-org-shell \
|
||||||
mongodb-org-tools \
|
mongodb-org-tools \
|
||||||
@@ -71,8 +75,14 @@ RUN set -x \
|
|||||||
net-tools \
|
net-tools \
|
||||||
netcat \
|
netcat \
|
||||||
nodejs \
|
nodejs \
|
||||||
|
openssh-client \
|
||||||
|
patch \
|
||||||
postgresql-client \
|
postgresql-client \
|
||||||
|
python-cffi \
|
||||||
|
python-dev \
|
||||||
python-pip \
|
python-pip \
|
||||||
|
python-wheel \
|
||||||
|
redis-tools \
|
||||||
rubygems \
|
rubygems \
|
||||||
ruby-dev \
|
ruby-dev \
|
||||||
shellcheck \
|
shellcheck \
|
||||||
@@ -93,6 +103,10 @@ RUN set -x \
|
|||||||
RUN set -x \
|
RUN set -x \
|
||||||
# composer
|
# composer
|
||||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||||
|
# ansible
|
||||||
|
&& pip install --upgrade setuptools \
|
||||||
|
&& pip install ansible \
|
||||||
|
\
|
||||||
# awesomeci
|
# awesomeci
|
||||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||||
&& cd /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 mdlint \
|
||||||
&& npm install -g gulp \
|
&& 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
|
# drush
|
||||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||||
&& cd /usr/local/src/drush \
|
&& cd /usr/local/src/drush \
|
||||||
@@ -145,18 +163,27 @@ RUN set -x \
|
|||||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
&& 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
|
# linuxbrew
|
||||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
&& 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}' \
|
'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 \
|
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||||
'echo "export MANPATH=/usr/local/src/linuxbrew/share/man:${MANPATH}" >> /home/devilbox/${v}' \
|
'echo "export MANPATH=/usr/local/src/linuxbrew/share/man:${MANPATH}" >> /home/devilbox/${v}' \
|
||||||
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
&& v="${BASH_PROFILE}" su ${MY_USER} -c -p \
|
||||||
'echo "export INFOPATH=/usr/local/src/linuxbrew/share/man:${INFOPATH}" >> /home/devilbox/${v}' \
|
'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 update' \
|
||||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew config' \
|
&& 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
|
# mysqldumpsecure
|
||||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||||
&& cd /usr/local/src/mysqldump-secure \
|
&& cd /usr/local/src/mysqldump-secure \
|
||||||
@@ -190,6 +217,24 @@ RUN set -x \
|
|||||||
&& cd / \
|
&& cd / \
|
||||||
&& rm -rf /usr/local/src/phalcon-devtools/.git \
|
&& 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
|
# symfony
|
||||||
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
&& curl https://symfony.com/installer -L -o /usr/local/bin/symfony \
|
||||||
&& chmod +x /usr/local/bin/symfony \
|
&& chmod +x /usr/local/bin/symfony \
|
||||||
@@ -198,6 +243,10 @@ RUN set -x \
|
|||||||
# wpcli
|
# wpcli
|
||||||
&& curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -L -o /usr/local/bin/wp \
|
&& 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 \
|
&& 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
|
# cleanup
|
||||||
&& rm -rf /home/${MY_USER}/.*json \
|
&& rm -rf /home/${MY_USER}/.*json \
|
||||||
&& rm -rf /home/${MY_USER}/.cache \
|
&& 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 "PATH=\${PATH}:/usr/local/bin:/usr/local/sbin:/usr/local/node/bin"; \
|
||||||
echo "export PATH"; \
|
echo "export PATH"; \
|
||||||
echo ". /etc/bash-devilbox"; \
|
echo ". /etc/bash-devilbox"; \
|
||||||
echo "if [ -d /etc/bash-custom.d/ ]; then"; \
|
echo "if [ -d /etc/bashrc-devilbox.d/ ]; then"; \
|
||||||
echo " for f in /etc/bash-custom.d/*.sh ; do"; \
|
echo " for f in /etc/bashrc-devilbox.d/*.sh ; do"; \
|
||||||
echo " if [ -r \"\${f}\" ]; then"; \
|
echo " if [ -r \"\${f}\" ]; then"; \
|
||||||
echo " . \"\${f}\""; \
|
echo " . \"\${f}\""; \
|
||||||
echo " fi"; \
|
echo " fi"; \
|
||||||
@@ -253,6 +302,7 @@ RUN set -x \
|
|||||||
|
|
||||||
RUN set -x \
|
RUN set -x \
|
||||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||||
|
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||||
&& mdl --version | grep -E '[.0-9]+' \
|
&& mdl --version | grep -E '[.0-9]+' \
|
||||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||||
&& eslint -v | grep -E '[.0-9]+' \
|
&& eslint -v | grep -E '[.0-9]+' \
|
||||||
@@ -260,34 +310,47 @@ RUN set -x \
|
|||||||
&& mdlint --version | grep -E '[.0-9]+' \
|
&& mdlint --version | grep -E '[.0-9]+' \
|
||||||
&& gulp --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]+' \
|
&& drush --version | grep -E '[.0-9]+' \
|
||||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||||
&& git-flow version | grep -E '[.0-9]+' \
|
&& git-flow version | grep -E '[.0-9]+' \
|
||||||
&& grunt --version | grep -E '[.0-9]+' \
|
&& grunt --version | grep -E '[.0-9]+' \
|
||||||
&& laravel --version | grep -E '(Installer|version)\s*[.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]+' \
|
&& 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]+' \
|
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||||
&& phalcon commands | grep -E '[.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]+' \
|
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||||
&& webpack --version | grep -E '[.0-9]+' \
|
&& webpack --version | grep -E '[.0-9]+' \
|
||||||
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
&& wp --allow-root --version | grep -E '[.0-9]+' \
|
||||||
|
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \
|
||||||
&& true
|
&& true
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Copy files
|
### 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.sh /docker-entrypoint.sh
|
||||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Volumes
|
### Volumes
|
||||||
###
|
###
|
||||||
VOLUME /etc/bash-custom.d
|
VOLUME /etc/bashrc-devilbox.d
|
||||||
VOLUME /etc/php-custom.d
|
VOLUME /etc/php-custom.d
|
||||||
|
VOLUME /etc/php-fpm-custom.d
|
||||||
VOLUME /etc/php-modules.d
|
VOLUME /etc/php-modules.d
|
||||||
VOLUME /shared/backups
|
VOLUME /shared/backups
|
||||||
VOLUME /var/log/php
|
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 ..'
|
alias ..='cd ..'
|
||||||
|
|
||||||
# Nice PS1
|
# 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
|
# Show Intro
|
||||||
echo
|
echo
|
||||||
@@ -34,7 +42,7 @@ echo " | Available Tools | Project website |"
|
|||||||
echo " |------------------|------------------------------|"
|
echo " |------------------|------------------------------|"
|
||||||
echo " | awesome-ci | gh: cytopia/awesome-ci |"
|
echo " | awesome-ci | gh: cytopia/awesome-ci |"
|
||||||
echo " | composer | https://getcomposer.org |"
|
echo " | composer | https://getcomposer.org |"
|
||||||
echo " | druapl-console | https://drupalconsole.com |"
|
echo " | drupal-console | https://drupalconsole.com |"
|
||||||
echo " | drush | http://www.drush.org |"
|
echo " | drush | http://www.drush.org |"
|
||||||
echo " | eslint | https://eslint.org |"
|
echo " | eslint | https://eslint.org |"
|
||||||
echo " | git | https://git-scm.com |"
|
echo " | git | https://git-scm.com |"
|
||||||
@@ -45,7 +53,7 @@ echo " | node | https://nodejs.org |"
|
|||||||
echo " | npm | https://www.npmjs.com |"
|
echo " | npm | https://www.npmjs.com |"
|
||||||
echo " | phalcon-devtools | gh: phalcon/phalcon-devtools |"
|
echo " | phalcon-devtools | gh: phalcon/phalcon-devtools |"
|
||||||
echo " | symfony installer| gh: symfony/symfony-installer|"
|
echo " | symfony installer| gh: symfony/symfony-installer|"
|
||||||
echo " | webpack | ghL webpack/webpack |"
|
echo " | webpack | gh: webpack/webpack |"
|
||||||
echo " | wpcli | https://wp-cli.org |"
|
echo " | wpcli | https://wp-cli.org |"
|
||||||
echo
|
echo
|
||||||
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,8 +21,15 @@ CONFIG_DIR="/docker-entrypoint.d"
|
|||||||
# php.ini.d directory
|
# php.ini.d directory
|
||||||
PHP_INI_DIR="/usr/local/etc/php/conf.d"
|
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
|
# 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
|
# PHP-FPM log dir
|
||||||
FPM_LOG_DIR="/var/log/php"
|
FPM_LOG_DIR="/var/log/php"
|
||||||
@@ -30,6 +37,9 @@ FPM_LOG_DIR="/var/log/php"
|
|||||||
# Custom ini dir (to be copied to actual ini dir)
|
# Custom ini dir (to be copied to actual ini dir)
|
||||||
PHP_CUST_INI_DIR="/etc/php-custom.d"
|
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
|
# Supervisord config directory
|
||||||
SUPERVISOR_CONFD="/etc/supervisor/conf.d"
|
SUPERVISOR_CONFD="/etc/supervisor/conf.d"
|
||||||
|
|
||||||
@@ -70,9 +80,11 @@ set_timezone "TIMEZONE" "${PHP_INI_DIR}" "${DEBUG_LEVEL}"
|
|||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Setup postfix
|
### PHP-FPM 5.2 and PHP-FPM 5.3 Env variables fix
|
||||||
###
|
###
|
||||||
set_postfix "ENABLE_MAIL" "${MY_USER}" "${MY_GROUP}" "${PHP_INI_DIR}" "${DEBUG_LEVEL}"
|
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
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
@@ -81,12 +93,25 @@ set_postfix "ENABLE_MAIL" "${MY_USER}" "${MY_GROUP}" "${PHP_INI_DIR}" "${DEBUG_L
|
|||||||
set_docker_logs \
|
set_docker_logs \
|
||||||
"DOCKER_LOGS" \
|
"DOCKER_LOGS" \
|
||||||
"${FPM_LOG_DIR}" \
|
"${FPM_LOG_DIR}" \
|
||||||
"${FPM_CONF_LOGFILE}" \
|
"${PHP_FPM_CONF_LOGFILE}" \
|
||||||
|
"${PHP_INI_CONF_LOGFILE}" \
|
||||||
"${MY_USER}" \
|
"${MY_USER}" \
|
||||||
"${MY_GROUP}" \
|
"${MY_GROUP}" \
|
||||||
"${DEBUG_LEVEL}"
|
"${DEBUG_LEVEL}"
|
||||||
|
|
||||||
|
|
||||||
|
###
|
||||||
|
### Setup postfix
|
||||||
|
###
|
||||||
|
if is_docker_logs_enabled "DOCKER_LOGS" >/dev/null; then
|
||||||
|
# PHP mail function should log to stderr
|
||||||
|
set_postfix "ENABLE_MAIL" "${MY_USER}" "${MY_GROUP}" "${PHP_INI_DIR}" "/proc/self/fd/2" "1" "${DEBUG_LEVEL}"
|
||||||
|
else
|
||||||
|
# PHP mail function should log to file
|
||||||
|
set_postfix "ENABLE_MAIL" "${MY_USER}" "${MY_GROUP}" "${PHP_INI_DIR}" "${PHP_MAIL_LOG}" "0" "${DEBUG_LEVEL}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Validate socat port forwards
|
### Validate socat port forwards
|
||||||
###
|
###
|
||||||
@@ -131,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_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
|
### mysqldump-secure
|
||||||
###
|
###
|
||||||
@@ -138,6 +185,27 @@ fix_mds_permissions "${MY_USER}" "${MY_GROUP}" "${DEBUG_LEVEL}"
|
|||||||
set_mds_settings "MYSQL_BACKUP_USER" "MYSQL_BACKUP_PASS" "MYSQL_BACKUP_HOST" "${DEBUG_LEVEL}"
|
set_mds_settings "MYSQL_BACKUP_USER" "MYSQL_BACKUP_PASS" "MYSQL_BACKUP_HOST" "${DEBUG_LEVEL}"
|
||||||
|
|
||||||
|
|
||||||
|
###
|
||||||
|
### Fix mountpoint permissions
|
||||||
|
###
|
||||||
|
if [ ! -d "/shared/backups" ]; then
|
||||||
|
run "mkdir -p /shared/backups" "${DEBUG_LEVEL}"
|
||||||
|
fi
|
||||||
|
if [ ! -d "/shared/httpd" ]; then
|
||||||
|
run "mkdir -p /shared/httpd" "${DEBUG_LEVEL}"
|
||||||
|
fi
|
||||||
|
run "chown ${MY_USER}:${MY_GROUP} /shared/backups" "${DEBUG_LEVEL}"
|
||||||
|
run "chown ${MY_USER}:${MY_GROUP} /shared/httpd" "${DEBUG_LEVEL}"
|
||||||
|
run "chmod 0755 /shared/backups" "${DEBUG_LEVEL}"
|
||||||
|
run "chmod 0755 /shared/httpd" "${DEBUG_LEVEL}"
|
||||||
|
|
||||||
|
|
||||||
|
###
|
||||||
|
### Update ca-certificates
|
||||||
|
###
|
||||||
|
update_ca_certificates "/ca" "${DEBUG_LEVEL}"
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Startup
|
### 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-prod: Rebuild all prod images"
|
||||||
@printf "%s\n" "make rebuild-work: Rebuild all work images"
|
@printf "%s\n" "make rebuild-work: Rebuild all work images"
|
||||||
@printf "\n"
|
@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-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-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-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-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-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-72: Build PHP 7.2 base image"
|
||||||
|
@printf "%s\n" "make build-base-73: Build PHP 7.3 base image"
|
||||||
@printf "\n"
|
@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-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-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-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-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-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-72: Build PHP 7.2 mods image"
|
||||||
|
@printf "%s\n" "make build-mods-73: Build PHP 7.3 mods image"
|
||||||
@printf "\n"
|
@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-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-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-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-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-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-72: Build PHP 7.2 prod image"
|
||||||
|
@printf "%s\n" "make build-prod-73: Build PHP 7.3 prod image"
|
||||||
@printf "\n"
|
@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-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-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-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-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-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-72: Build PHP 7.2 work image"
|
||||||
|
@printf "%s\n" "make build-work-73: Build PHP 7.3 work image"
|
||||||
@printf "\n"
|
@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-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-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-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-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-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-72: Build PHP 7.2 base image"
|
||||||
|
@printf "%s\n" "make rebuild-base-73: Build PHP 7.3 base image"
|
||||||
@printf "\n"
|
@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-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-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-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-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-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-72: Build PHP 7.2 mods image"
|
||||||
|
@printf "%s\n" "make rebuild-mods-73: Build PHP 7.3 mods image"
|
||||||
@printf "\n"
|
@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-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-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-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-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-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-72: Build PHP 7.2 prod image"
|
||||||
|
@printf "%s\n" "make rebuild-prod-73: Build PHP 7.3 prod image"
|
||||||
@printf "\n"
|
@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-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-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-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-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-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-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 categories
|
||||||
###
|
###
|
||||||
build-base: build-base-54 build-base-55 build-base-56 build-base-70 build-base-71 build-base-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-54 build-mods-55 build-mods-56 build-mods-70 build-mods-71 build-mods-72
|
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-54 build-prod-55 build-prod-56 build-prod-70 build-prod-71 build-prod-72
|
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-54 build-work-55 build-work-56 build-work-70 build-work-71 build-work-72
|
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-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-54 rebuild-mods-55 rebuild-mods-56 rebuild-mods-70 rebuild-mods-71 rebuild-mods-72
|
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-54 rebuild-prod-55 rebuild-prod-56 rebuild-prod-70 rebuild-prod-71 rebuild-prod-72
|
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-54 rebuild-work-55 rebuild-work-56 rebuild-work-70 rebuild-work-71 rebuild-work-72
|
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 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
|
build-base-54: pull-from-54
|
||||||
docker build -t devilbox/php-fpm:5.4-base -f $(location)/base/Dockerfile-5.4 $(location)/base
|
docker build -t devilbox/php-fpm:5.4-base -f $(location)/base/Dockerfile-5.4 $(location)/base
|
||||||
build-base-55: pull-from-55
|
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
|
docker build -t devilbox/php-fpm:7.1-base -f $(location)/base/Dockerfile-7.1 $(location)/base
|
||||||
build-base-72: pull-from-72
|
build-base-72: pull-from-72
|
||||||
docker build -t devilbox/php-fpm:7.2-base -f $(location)/base/Dockerfile-7.2 $(location)/base
|
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:
|
build-mods-54:
|
||||||
docker build -t devilbox/php-fpm:5.4-mods -f $(location)/mods/Dockerfile-5.4 $(location)/mods
|
docker build -t devilbox/php-fpm:5.4-mods -f $(location)/mods/Dockerfile-5.4 $(location)/mods
|
||||||
build-mods-55:
|
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
|
docker build -t devilbox/php-fpm:7.1-mods -f $(location)/mods/Dockerfile-7.1 $(location)/mods
|
||||||
build-mods-72:
|
build-mods-72:
|
||||||
docker build -t devilbox/php-fpm:7.2-mods -f $(location)/mods/Dockerfile-7.2 $(location)/mods
|
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:
|
build-prod-54:
|
||||||
docker build -t devilbox/php-fpm:5.4-prod -f $(location)/prod/Dockerfile-5.4 $(location)/prod
|
docker build -t devilbox/php-fpm:5.4-prod -f $(location)/prod/Dockerfile-5.4 $(location)/prod
|
||||||
build-prod-55:
|
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
|
docker build -t devilbox/php-fpm:7.1-prod -f $(location)/prod/Dockerfile-7.1 $(location)/prod
|
||||||
build-prod-72:
|
build-prod-72:
|
||||||
docker build -t devilbox/php-fpm:7.2-prod -f $(location)/prod/Dockerfile-7.2 $(location)/prod
|
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:
|
build-work-54:
|
||||||
docker build -t devilbox/php-fpm:5.4-work -f $(location)/work/Dockerfile-5.4 $(location)/work
|
docker build -t devilbox/php-fpm:5.4-work -f $(location)/work/Dockerfile-5.4 $(location)/work
|
||||||
build-work-55:
|
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
|
docker build -t devilbox/php-fpm:7.1-work -f $(location)/work/Dockerfile-7.1 $(location)/work
|
||||||
build-work-72:
|
build-work-72:
|
||||||
docker build -t devilbox/php-fpm:7.2-work -f $(location)/work/Dockerfile-7.2 $(location)/work
|
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 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
|
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
|
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
|
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
|
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
|
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
|
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:
|
rebuild-mods-54:
|
||||||
docker build --no-cache -t devilbox/php-fpm:5.4-mods -f $(location)/mods/Dockerfile-5.4 $(location)/mods
|
docker build --no-cache -t devilbox/php-fpm:5.4-mods -f $(location)/mods/Dockerfile-5.4 $(location)/mods
|
||||||
rebuild-mods-55:
|
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
|
docker build --no-cache -t devilbox/php-fpm:7.1-mods -f $(location)/mods/Dockerfile-7.1 $(location)/mods
|
||||||
rebuild-mods-72:
|
rebuild-mods-72:
|
||||||
docker build --no-cache -t devilbox/php-fpm:7.2-mods -f $(location)/mods/Dockerfile-7.2 $(location)/mods
|
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:
|
rebuild-prod-54:
|
||||||
docker build --no-cache -t devilbox/php-fpm:5.4-prod -f $(location)/prod/Dockerfile-5.4 $(location)/prod
|
docker build --no-cache -t devilbox/php-fpm:5.4-prod -f $(location)/prod/Dockerfile-5.4 $(location)/prod
|
||||||
rebuild-prod-55:
|
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
|
docker build --no-cache -t devilbox/php-fpm:7.1-prod -f $(location)/prod/Dockerfile-7.1 $(location)/prod
|
||||||
rebuild-prod-72:
|
rebuild-prod-72:
|
||||||
docker build --no-cache -t devilbox/php-fpm:7.2-prod -f $(location)/prod/Dockerfile-7.2 $(location)/prod
|
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:
|
rebuild-work-54:
|
||||||
docker build --no-cache -t devilbox/php-fpm:5.4-work -f $(location)/work/Dockerfile-5.4 $(location)/work
|
docker build --no-cache -t devilbox/php-fpm:5.4-work -f $(location)/work/Dockerfile-5.4 $(location)/work
|
||||||
rebuild-work-55:
|
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
|
docker build --no-cache -t devilbox/php-fpm:7.1-work -f $(location)/work/Dockerfile-7.1 $(location)/work
|
||||||
rebuild-work-72:
|
rebuild-work-72:
|
||||||
docker build --no-cache -t devilbox/php-fpm:7.2-work -f $(location)/work/Dockerfile-7.2 $(location)/work
|
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 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:
|
pull-from-54:
|
||||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-5.4 | sed 's/^FROM//g'; done)
|
docker pull $(shell grep FROM $(location)/base/Dockerfile-5.4 | sed 's/^FROM//g'; done)
|
||||||
pull-from-55:
|
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)
|
docker pull $(shell grep FROM $(location)/base/Dockerfile-7.1 | sed 's/^FROM//g'; done)
|
||||||
pull-from-72:
|
pull-from-72:
|
||||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-7.2 | sed 's/^FROM//g'; done)
|
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
|
### Tests
|
||||||
###
|
###
|
||||||
|
test-base-52:
|
||||||
|
./tests/test.sh 5.2 base
|
||||||
|
test-base-53:
|
||||||
|
./tests/test.sh 5.3 base
|
||||||
test-base-54:
|
test-base-54:
|
||||||
./tests/test.sh 5.4 base
|
./tests/test.sh 5.4 base
|
||||||
test-base-55:
|
test-base-55:
|
||||||
@@ -276,7 +368,13 @@ test-base-71:
|
|||||||
./tests/test.sh 7.1 base
|
./tests/test.sh 7.1 base
|
||||||
test-base-72:
|
test-base-72:
|
||||||
./tests/test.sh 7.2 base
|
./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:
|
test-mods-54:
|
||||||
./tests/test.sh 5.4 mods
|
./tests/test.sh 5.4 mods
|
||||||
test-mods-55:
|
test-mods-55:
|
||||||
@@ -289,7 +387,13 @@ test-mods-71:
|
|||||||
./tests/test.sh 7.1 mods
|
./tests/test.sh 7.1 mods
|
||||||
test-mods-72:
|
test-mods-72:
|
||||||
./tests/test.sh 7.2 mods
|
./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:
|
test-prod-54:
|
||||||
./tests/test.sh 5.4 prod
|
./tests/test.sh 5.4 prod
|
||||||
test-prod-55:
|
test-prod-55:
|
||||||
@@ -302,7 +406,13 @@ test-prod-71:
|
|||||||
./tests/test.sh 7.1 prod
|
./tests/test.sh 7.1 prod
|
||||||
test-prod-72:
|
test-prod-72:
|
||||||
./tests/test.sh 7.2 prod
|
./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:
|
test-work-54:
|
||||||
./tests/test.sh 5.4 work
|
./tests/test.sh 5.4 work
|
||||||
test-work-55:
|
test-work-55:
|
||||||
@@ -315,3 +425,5 @@ test-work-71:
|
|||||||
./tests/test.sh 7.1 work
|
./tests/test.sh 7.1 work
|
||||||
test-work-72:
|
test-work-72:
|
||||||
./tests/test.sh 7.2 work
|
./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.
|
# 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
|
FROM php:{{ php_version }}-fpm
|
||||||
|
{% endif %}
|
||||||
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
MAINTAINER "cytopia" <cytopia@everythingcli.org>
|
||||||
|
|
||||||
|
|
||||||
@@ -20,7 +28,8 @@ LABEL \
|
|||||||
ENV MY_USER="devilbox" \
|
ENV MY_USER="devilbox" \
|
||||||
MY_GROUP="devilbox" \
|
MY_GROUP="devilbox" \
|
||||||
MY_UID="1000" \
|
MY_UID="1000" \
|
||||||
MY_GID="1000"
|
MY_GID="1000" \
|
||||||
|
PHP_VERSION="{{ php_version }}"
|
||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
@@ -32,21 +41,35 @@ RUN set -x \
|
|||||||
|
|
||||||
|
|
||||||
###
|
###
|
||||||
### Upgrade
|
### Upgrade (install ps)
|
||||||
###
|
###
|
||||||
RUN set -x \
|
RUN set -x \
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt-get upgrade -y \
|
&& apt-get upgrade -y \
|
||||||
|
&& apt-get install --no-install-recommends --no-install-suggests -y procps \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& 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 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.sh /docker-entrypoint.sh
|
||||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
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 %}
|
{% if debug %}
|
||||||
|
|||||||
@@ -113,6 +113,9 @@ RUN set -x \
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
&& docker-php-ext-enable {{ ext }} \
|
&& docker-php-ext-enable {{ ext }} \
|
||||||
&& cd / && rm -rf /tmp/{{ ext }} \
|
&& cd / && rm -rf /tmp/{{ ext }} \
|
||||||
|
{# ---- 4.) CUSTOM ---- #}
|
||||||
|
{% elif extensions_available[ext][php_version]['type'] == 'custom' %}
|
||||||
|
&& {{ extensions_available[ext][php_version]['command'] }} \
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{# ---------- Installation (generic) ---------- #}
|
{# ---------- Installation (generic) ---------- #}
|
||||||
{% elif 'all' in extensions_available[ext] and 'type' in extensions_available[ext]['all'] %}
|
{% elif 'all' in extensions_available[ext] and 'type' in extensions_available[ext]['all'] %}
|
||||||
@@ -147,6 +150,9 @@ RUN set -x \
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
&& docker-php-ext-enable {{ ext }} \
|
&& docker-php-ext-enable {{ ext }} \
|
||||||
&& cd / && rm -rf /tmp/{{ ext }} \
|
&& cd / && rm -rf /tmp/{{ ext }} \
|
||||||
|
{# ---- 4.) CUSTOM ---- #}
|
||||||
|
{% elif extensions_available[ext]['all']['type'] == 'custom' %}
|
||||||
|
&& {{ extensions_available[ext]['all']['command'] }} \
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -161,7 +167,7 @@ RUN set -x \
|
|||||||
${RUN_DEPS} \
|
${RUN_DEPS} \
|
||||||
&& rm -rf /var/lib/apt/lists/* \
|
&& rm -rf /var/lib/apt/lists/* \
|
||||||
&& update-ca-certificates \
|
&& 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 %}
|
{% if debug %}
|
||||||
@@ -181,6 +187,8 @@ RUN set -x \
|
|||||||
{% if ext == 'opcache' %}
|
{% if ext == 'opcache' %}
|
||||||
&& php -m | grep -oiE '^Zend Opcache$' \
|
&& php -m | grep -oiE '^Zend Opcache$' \
|
||||||
&& php-fpm -m | grep -oiE '^Zend Opcache$' \
|
&& php-fpm -m | grep -oiE '^Zend Opcache$' \
|
||||||
|
{% elif ext == 'ioncube' %}
|
||||||
|
{# Not enabled #}
|
||||||
{% else %}
|
{% else %}
|
||||||
&& php -m | grep -oiE '^{{ ext }}$' \
|
&& php -m | grep -oiE '^{{ ext }}$' \
|
||||||
&& php-fpm -m | grep -oiE '^{{ ext }}$' \
|
&& php-fpm -m | grep -oiE '^{{ ext }}$' \
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user