mirror of
https://github.com/devilbox/docker-php-fpm.git
synced 2025-12-11 19:41:16 +00:00
Compare commits
87 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
64f9fb510b | ||
|
|
34d87faa62 | ||
|
|
49fb3c44dc | ||
|
|
7147549e97 | ||
|
|
78227bf2ee | ||
|
|
5c1ae24dd7 | ||
|
|
b57a7c1a24 | ||
|
|
c0bd7e32b8 | ||
|
|
4c856c6d67 | ||
|
|
68417da37f | ||
|
|
fd255f1f9a | ||
|
|
e285134ad3 | ||
|
|
53cc3c5cc9 | ||
|
|
00d2e41de8 | ||
|
|
4afe6ab397 | ||
|
|
c427f37fba | ||
|
|
ea68f8e37a | ||
|
|
d5d07d0620 | ||
|
|
cfc06a1458 | ||
|
|
92eceb9ae9 | ||
|
|
796195dfdc | ||
|
|
3c17b4d3c1 | ||
|
|
b79e4b5b1b | ||
|
|
d82a529955 | ||
|
|
c41d30c92f | ||
|
|
3ffa64ad3a | ||
|
|
3a901f1699 | ||
|
|
e4c9e70957 | ||
|
|
619af1207d | ||
|
|
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 |
@@ -23,6 +23,7 @@ env:
|
||||
# DOCKER_PASSWORD
|
||||
- secure: "ZRrVOVOkSCS2UxEi1HNF1iKefK4sDT/sPRl1HxMQjLnRRaAMdG0aRnBwQf2YAM2qzhCfN85qt6zZtC4awc2mHiZ88JrAZxBjK6xj4BwOyLbDuzpBsKXnx8Nix+wyYYKSjsC3LOYrsUe+4rvkw3tVvVaX8G2llojwdksF34VDmmHBmzCG/Bsexk7UqC+qw0PZm7BtctQO+IL0btmMDijRDElxfR+AuPvf9JdkhYzw9TOO7Jqd53NssNVGyL+XSV0dfGn8PkZTp1e8D+28pLK4oGVog+Wk7Cq94hSGjk5AkWKvL5441rupG1AA8K3njeDNMKdov4o+dmnkAH7Jh8tjShMhNhoxHce3IzpczjhoE1EyYQcyPf1qdfhV35Xv096iWX5809pp1MZF2oE5eism8JaU9NpGClryVbKVKtup8ko9/tCqz01Czq5Vue40feMkGtdePulg59OhyyPLYldsObw8QlZydkrmgVZe6b+GyybeiHraTfDq4pvTgUrC4Cmm5J3IB5Ig1THEiYKHfRJ5hSSMDDODeBXc8Xh6mFssEVshNx/jbUQWuAVYQFw/GIquVHxr6btbevrWIoD+zmqcc0L98u9pYH8w7b+gMgVJNCC4QQz2NCGGWw9l9/TmLrKJgeXbG18n8D314le1zuna6/VfH9pXIlbNO4hgz5NLHJk="
|
||||
matrix:
|
||||
- PHP=5.2
|
||||
- PHP=5.3
|
||||
- PHP=5.4
|
||||
- PHP=5.5
|
||||
@@ -88,9 +89,6 @@ before_script:
|
||||
- ./build/gen-readme.sh "${PHP}"
|
||||
- git diff --quiet || { echo "Build Changes"; git diff; git status; false; }
|
||||
|
||||
# Integration tests
|
||||
- true
|
||||
|
||||
|
||||
###
|
||||
### Push to Dockerhub
|
||||
|
||||
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"]
|
||||
@@ -20,7 +20,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="5.3"
|
||||
|
||||
|
||||
###
|
||||
@@ -56,11 +57,11 @@ RUN set -x \
|
||||
###
|
||||
### 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
|
||||
COPY ./data/php-fpm.conf /usr/local/etc/php-fpm.conf
|
||||
COPY ./data/php-fpm.d /usr/local/etc/php-fpm.d
|
||||
COPY ./data/php-fpm.d-docker-5.3.conf /usr/local/etc/php-fpm.d/docker.conf
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -20,7 +20,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="5.4"
|
||||
|
||||
|
||||
###
|
||||
@@ -56,10 +57,11 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-5.4.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.4.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
COPY ./data/php-fpm.conf /usr/local/etc/php-fpm.conf
|
||||
COPY ./data/php-fpm.d /usr/local/etc/php-fpm.d
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -20,7 +20,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="5.5"
|
||||
|
||||
|
||||
###
|
||||
@@ -56,10 +57,11 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-5.5.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.5.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
COPY ./data/php-fpm.conf /usr/local/etc/php-fpm.conf
|
||||
COPY ./data/php-fpm.d /usr/local/etc/php-fpm.d
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -20,7 +20,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="5.6"
|
||||
|
||||
|
||||
###
|
||||
@@ -56,10 +57,11 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-5.6.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.6.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
COPY ./data/php-fpm.conf /usr/local/etc/php-fpm.conf
|
||||
COPY ./data/php-fpm.d /usr/local/etc/php-fpm.d
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -20,7 +20,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="7.0"
|
||||
|
||||
|
||||
###
|
||||
@@ -56,10 +57,11 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-7.0.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-7.0.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
COPY ./data/php-fpm.conf /usr/local/etc/php-fpm.conf
|
||||
COPY ./data/php-fpm.d /usr/local/etc/php-fpm.d
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -20,7 +20,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="7.1"
|
||||
|
||||
|
||||
###
|
||||
@@ -56,10 +57,11 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-7.1.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-7.1.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
COPY ./data/php-fpm.conf /usr/local/etc/php-fpm.conf
|
||||
COPY ./data/php-fpm.d /usr/local/etc/php-fpm.d
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -20,7 +20,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="7.2"
|
||||
|
||||
|
||||
###
|
||||
@@ -56,10 +57,11 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-7.2.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-7.2.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /docker-entrypoint.d
|
||||
COPY ./data/php-fpm.conf /usr/local/etc/php-fpm.conf
|
||||
COPY ./data/php-fpm.d /usr/local/etc/php-fpm.d
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -20,7 +20,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="7.3"
|
||||
|
||||
|
||||
###
|
||||
@@ -56,10 +57,11 @@ RUN set -x \
|
||||
###
|
||||
### 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
|
||||
COPY ./data/php-fpm.conf /usr/local/etc/php-fpm.conf
|
||||
COPY ./data/php-fpm.d /usr/local/etc/php-fpm.d
|
||||
|
||||
|
||||
###
|
||||
|
||||
@@ -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,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,7 +0,0 @@
|
||||
[www]
|
||||
|
||||
pm = dynamic
|
||||
pm.max_children = 20
|
||||
pm.start_servers = 10
|
||||
pm.min_spare_servers = 5
|
||||
pm.max_spare_servers = 10
|
||||
@@ -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"]
|
||||
@@ -60,6 +60,7 @@ ENV BUILD_DEPS \
|
||||
libssl-dev \
|
||||
libpspell-dev \
|
||||
librecode-dev \
|
||||
librdkafka-dev \
|
||||
libmm-dev \
|
||||
libxml2-dev \
|
||||
libssl-dev \
|
||||
@@ -100,6 +101,7 @@ ENV RUN_DEPS \
|
||||
libpq5 \
|
||||
libaspell15 \
|
||||
librecode0 \
|
||||
librdkafka1 \
|
||||
snmp \
|
||||
libnghttp2-5 \
|
||||
libtidy-0.99-0 \
|
||||
@@ -116,6 +118,16 @@ RUN set -x \
|
||||
${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 \
|
||||
@@ -192,6 +204,8 @@ RUN set -x \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) recode \
|
||||
&& pecl install redis \
|
||||
&& docker-php-ext-enable redis \
|
||||
&& pecl install rdkafka \
|
||||
&& docker-php-ext-enable rdkafka \
|
||||
&& /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 \
|
||||
@@ -347,6 +361,8 @@ RUN set -x \
|
||||
&& php-fpm -m | grep -oiE '^recode$' \
|
||||
&& php -m | grep -oiE '^redis$' \
|
||||
&& php-fpm -m | grep -oiE '^redis$' \
|
||||
&& php -m | grep -oiE '^rdkafka$' \
|
||||
&& php-fpm -m | grep -oiE '^rdkafka$' \
|
||||
&& php -m | grep -oiE '^session$' \
|
||||
&& php-fpm -m | grep -oiE '^session$' \
|
||||
&& php -m | grep -oiE '^shmop$' \
|
||||
|
||||
@@ -60,6 +60,7 @@ ENV BUILD_DEPS \
|
||||
libssl-dev \
|
||||
libpspell-dev \
|
||||
librecode-dev \
|
||||
librdkafka-dev \
|
||||
libmm-dev \
|
||||
libxml2-dev \
|
||||
libssl-dev \
|
||||
@@ -100,6 +101,7 @@ ENV RUN_DEPS \
|
||||
libpq5 \
|
||||
libaspell15 \
|
||||
librecode0 \
|
||||
librdkafka1 \
|
||||
snmp \
|
||||
libnghttp2-5 \
|
||||
libtidy-0.99-0 \
|
||||
@@ -116,6 +118,16 @@ RUN set -x \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& EXTENSION_DIR="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )" \
|
||||
&& if [ ! -d "${EXTENSION_DIR}" ]; then mkdir -p "${EXTENSION_DIR}"; fi \
|
||||
&& curl https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -L -o ioncube.tar.gz \
|
||||
&& tar xvfz ioncube.tar.gz \
|
||||
&& cd ioncube \
|
||||
&& cp "ioncube_loader_lin_5.4.so" "${EXTENSION_DIR}/ioncube.so" \
|
||||
&& cd ../ \
|
||||
&& rm -rf ioncube \
|
||||
&& rm -rf ioncube.tar.gz \
|
||||
\
|
||||
&& echo "/usr" | pecl install amqp \
|
||||
&& docker-php-ext-enable amqp \
|
||||
&& pecl install apcu-4.0.11 \
|
||||
@@ -192,6 +204,8 @@ RUN set -x \
|
||||
&& /usr/local/bin/docker-php-ext-install recode \
|
||||
&& pecl install redis \
|
||||
&& docker-php-ext-enable redis \
|
||||
&& pecl install rdkafka \
|
||||
&& docker-php-ext-enable rdkafka \
|
||||
&& /usr/local/bin/docker-php-ext-configure session --with-mm \
|
||||
&& /usr/local/bin/docker-php-ext-install session \
|
||||
&& /usr/local/bin/docker-php-ext-install shmop \
|
||||
@@ -347,6 +361,8 @@ RUN set -x \
|
||||
&& php-fpm -m | grep -oiE '^recode$' \
|
||||
&& php -m | grep -oiE '^redis$' \
|
||||
&& php-fpm -m | grep -oiE '^redis$' \
|
||||
&& php -m | grep -oiE '^rdkafka$' \
|
||||
&& php-fpm -m | grep -oiE '^rdkafka$' \
|
||||
&& php -m | grep -oiE '^session$' \
|
||||
&& php-fpm -m | grep -oiE '^session$' \
|
||||
&& php -m | grep -oiE '^shmop$' \
|
||||
|
||||
@@ -62,6 +62,7 @@ ENV BUILD_DEPS \
|
||||
libedit-dev \
|
||||
libreadline-dev \
|
||||
librecode-dev \
|
||||
librdkafka-dev \
|
||||
libmm-dev \
|
||||
libxml2-dev \
|
||||
libssl-dev \
|
||||
@@ -102,6 +103,7 @@ ENV RUN_DEPS \
|
||||
libpq5 \
|
||||
libaspell15 \
|
||||
librecode0 \
|
||||
librdkafka1 \
|
||||
snmp \
|
||||
libnghttp2-5 \
|
||||
libtidy-0.99-0 \
|
||||
@@ -118,6 +120,16 @@ RUN set -x \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& EXTENSION_DIR="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )" \
|
||||
&& if [ ! -d "${EXTENSION_DIR}" ]; then mkdir -p "${EXTENSION_DIR}"; fi \
|
||||
&& curl https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -L -o ioncube.tar.gz \
|
||||
&& tar xvfz ioncube.tar.gz \
|
||||
&& cd ioncube \
|
||||
&& cp "ioncube_loader_lin_5.5.so" "${EXTENSION_DIR}/ioncube.so" \
|
||||
&& cd ../ \
|
||||
&& rm -rf ioncube \
|
||||
&& rm -rf ioncube.tar.gz \
|
||||
\
|
||||
&& echo "/usr" | pecl install amqp \
|
||||
&& docker-php-ext-enable amqp \
|
||||
&& pecl install apcu-4.0.11 \
|
||||
@@ -194,6 +206,8 @@ RUN set -x \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) recode \
|
||||
&& pecl install redis \
|
||||
&& docker-php-ext-enable redis \
|
||||
&& pecl install rdkafka \
|
||||
&& docker-php-ext-enable rdkafka \
|
||||
&& /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 \
|
||||
@@ -351,6 +365,8 @@ RUN set -x \
|
||||
&& php-fpm -m | grep -oiE '^recode$' \
|
||||
&& php -m | grep -oiE '^redis$' \
|
||||
&& php-fpm -m | grep -oiE '^redis$' \
|
||||
&& php -m | grep -oiE '^rdkafka$' \
|
||||
&& php-fpm -m | grep -oiE '^rdkafka$' \
|
||||
&& php -m | grep -oiE '^session$' \
|
||||
&& php-fpm -m | grep -oiE '^session$' \
|
||||
&& php -m | grep -oiE '^shmop$' \
|
||||
|
||||
@@ -30,6 +30,7 @@ ENV BUILD_DEPS \
|
||||
libvpx-dev \
|
||||
zlib1g-dev \
|
||||
libfreetype6-dev \
|
||||
libwebp-dev \
|
||||
libgmp-dev \
|
||||
libmagickwand-dev \
|
||||
libc-client-dev \
|
||||
@@ -57,11 +58,11 @@ ENV BUILD_DEPS \
|
||||
libpq-dev \
|
||||
libsqlite3-dev \
|
||||
libpq-dev \
|
||||
libssl-dev \
|
||||
libpspell-dev \
|
||||
libedit-dev \
|
||||
libreadline-dev \
|
||||
librecode-dev \
|
||||
librdkafka-dev \
|
||||
libmm-dev \
|
||||
libxml2-dev \
|
||||
libssl-dev \
|
||||
@@ -83,31 +84,33 @@ ENV BUILD_DEPS \
|
||||
git
|
||||
|
||||
ENV RUN_DEPS \
|
||||
librabbitmq1 \
|
||||
librabbitmq4 \
|
||||
libenchant1c2a \
|
||||
libpng12-0 \
|
||||
libpng16-16 \
|
||||
libjpeg62-turbo \
|
||||
libxpm4 \
|
||||
libvpx1 \
|
||||
libvpx4 \
|
||||
libfreetype6 \
|
||||
libmagickwand-6.q16-2 \
|
||||
libwebp6 \
|
||||
libmagickwand-6.q16-3 \
|
||||
libc-client2007e \
|
||||
libfbclient2 \
|
||||
libicu52 \
|
||||
libicu57 \
|
||||
libmcrypt4 \
|
||||
libmemcachedutil2 \
|
||||
libmysqlclient18 \
|
||||
libmariadbclient18 \
|
||||
libsybdb5 \
|
||||
libfbclient2 \
|
||||
libpq5 \
|
||||
libpq5 \
|
||||
libaspell15 \
|
||||
librecode0 \
|
||||
librdkafka1 \
|
||||
snmp \
|
||||
libnghttp2-5 \
|
||||
libtidy-0.99-0 \
|
||||
libnghttp2-14 \
|
||||
libtidy5 \
|
||||
libxslt1.1 \
|
||||
libzip2 \
|
||||
libzip4 \
|
||||
ca-certificates
|
||||
|
||||
|
||||
@@ -120,6 +123,16 @@ RUN set -x \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& EXTENSION_DIR="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )" \
|
||||
&& if [ ! -d "${EXTENSION_DIR}" ]; then mkdir -p "${EXTENSION_DIR}"; fi \
|
||||
&& curl https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -L -o ioncube.tar.gz \
|
||||
&& tar xvfz ioncube.tar.gz \
|
||||
&& cd ioncube \
|
||||
&& cp "ioncube_loader_lin_5.6.so" "${EXTENSION_DIR}/ioncube.so" \
|
||||
&& cd ../ \
|
||||
&& rm -rf ioncube \
|
||||
&& rm -rf ioncube.tar.gz \
|
||||
\
|
||||
&& echo "/usr" | pecl install amqp \
|
||||
&& docker-php-ext-enable amqp \
|
||||
&& pecl install apcu-4.0.11 \
|
||||
@@ -189,13 +202,14 @@ RUN set -x \
|
||||
&& cd build && ./install \
|
||||
&& docker-php-ext-enable phalcon \
|
||||
&& cd / && rm -rf /tmp/phalcon \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) phar \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) posix \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pspell \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) readline \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) recode \
|
||||
&& pecl install redis \
|
||||
&& docker-php-ext-enable redis \
|
||||
&& pecl install rdkafka \
|
||||
&& docker-php-ext-enable rdkafka \
|
||||
&& /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 \
|
||||
@@ -341,8 +355,6 @@ RUN set -x \
|
||||
&& php-fpm -m | grep -oiE '^pgsql$' \
|
||||
&& php -m | grep -oiE '^phalcon$' \
|
||||
&& php-fpm -m | grep -oiE '^phalcon$' \
|
||||
&& php -m | grep -oiE '^phar$' \
|
||||
&& php-fpm -m | grep -oiE '^phar$' \
|
||||
&& php -m | grep -oiE '^posix$' \
|
||||
&& php-fpm -m | grep -oiE '^posix$' \
|
||||
&& php -m | grep -oiE '^pspell$' \
|
||||
@@ -353,6 +365,8 @@ RUN set -x \
|
||||
&& php-fpm -m | grep -oiE '^recode$' \
|
||||
&& php -m | grep -oiE '^redis$' \
|
||||
&& php-fpm -m | grep -oiE '^redis$' \
|
||||
&& php -m | grep -oiE '^rdkafka$' \
|
||||
&& php-fpm -m | grep -oiE '^rdkafka$' \
|
||||
&& php -m | grep -oiE '^session$' \
|
||||
&& php-fpm -m | grep -oiE '^session$' \
|
||||
&& php -m | grep -oiE '^shmop$' \
|
||||
|
||||
@@ -61,6 +61,7 @@ ENV BUILD_DEPS \
|
||||
libedit-dev \
|
||||
libreadline-dev \
|
||||
librecode-dev \
|
||||
librdkafka-dev \
|
||||
libmm-dev \
|
||||
libxml2-dev \
|
||||
libssl-dev \
|
||||
@@ -81,18 +82,18 @@ ENV BUILD_DEPS \
|
||||
git
|
||||
|
||||
ENV RUN_DEPS \
|
||||
librabbitmq1 \
|
||||
librabbitmq4 \
|
||||
libenchant1c2a \
|
||||
libpng12-0 \
|
||||
libpng16-16 \
|
||||
libjpeg62-turbo \
|
||||
libxpm4 \
|
||||
libvpx1 \
|
||||
libvpx4 \
|
||||
libfreetype6 \
|
||||
libwebp-dev \
|
||||
libmagickwand-6.q16-2 \
|
||||
libwebp6 \
|
||||
libmagickwand-6.q16-3 \
|
||||
libc-client2007e \
|
||||
libfbclient2 \
|
||||
libicu52 \
|
||||
libicu57 \
|
||||
libmcrypt4 \
|
||||
libmemcachedutil2 \
|
||||
libsybdb5 \
|
||||
@@ -101,11 +102,12 @@ ENV RUN_DEPS \
|
||||
libpq5 \
|
||||
libaspell15 \
|
||||
librecode0 \
|
||||
librdkafka1 \
|
||||
snmp \
|
||||
libnghttp2-5 \
|
||||
libtidy-0.99-0 \
|
||||
libnghttp2-14 \
|
||||
libtidy5 \
|
||||
libxslt1.1 \
|
||||
libzip2 \
|
||||
libzip4 \
|
||||
ca-certificates
|
||||
|
||||
|
||||
@@ -118,6 +120,16 @@ RUN set -x \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& EXTENSION_DIR="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )" \
|
||||
&& if [ ! -d "${EXTENSION_DIR}" ]; then mkdir -p "${EXTENSION_DIR}"; fi \
|
||||
&& curl https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -L -o ioncube.tar.gz \
|
||||
&& tar xvfz ioncube.tar.gz \
|
||||
&& cd ioncube \
|
||||
&& cp "ioncube_loader_lin_7.0.so" "${EXTENSION_DIR}/ioncube.so" \
|
||||
&& cd ../ \
|
||||
&& rm -rf ioncube \
|
||||
&& rm -rf ioncube.tar.gz \
|
||||
\
|
||||
&& echo "/usr" | pecl install amqp \
|
||||
&& docker-php-ext-enable amqp \
|
||||
&& pecl install apcu \
|
||||
@@ -195,6 +207,8 @@ RUN set -x \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) recode \
|
||||
&& pecl install redis \
|
||||
&& docker-php-ext-enable redis \
|
||||
&& pecl install rdkafka \
|
||||
&& docker-php-ext-enable rdkafka \
|
||||
&& /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 \
|
||||
@@ -205,7 +219,7 @@ RUN set -x \
|
||||
&& /usr/local/bin/docker-php-ext-configure soap --with-libxml-dir=/usr \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) soap \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sockets \
|
||||
&& pecl install swoole \
|
||||
&& pecl install swoole-2.2.0 \
|
||||
&& docker-php-ext-enable swoole \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvmsg \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvsem \
|
||||
@@ -348,6 +362,8 @@ RUN set -x \
|
||||
&& php-fpm -m | grep -oiE '^recode$' \
|
||||
&& php -m | grep -oiE '^redis$' \
|
||||
&& php-fpm -m | grep -oiE '^redis$' \
|
||||
&& php -m | grep -oiE '^rdkafka$' \
|
||||
&& php-fpm -m | grep -oiE '^rdkafka$' \
|
||||
&& php -m | grep -oiE '^session$' \
|
||||
&& php-fpm -m | grep -oiE '^session$' \
|
||||
&& php -m | grep -oiE '^shmop$' \
|
||||
|
||||
@@ -61,6 +61,7 @@ ENV BUILD_DEPS \
|
||||
libedit-dev \
|
||||
libreadline-dev \
|
||||
librecode-dev \
|
||||
librdkafka-dev \
|
||||
libmm-dev \
|
||||
libxml2-dev \
|
||||
libssl-dev \
|
||||
@@ -81,18 +82,18 @@ ENV BUILD_DEPS \
|
||||
git
|
||||
|
||||
ENV RUN_DEPS \
|
||||
librabbitmq1 \
|
||||
librabbitmq4 \
|
||||
libenchant1c2a \
|
||||
libpng12-0 \
|
||||
libpng16-16 \
|
||||
libjpeg62-turbo \
|
||||
libxpm4 \
|
||||
libvpx1 \
|
||||
libvpx4 \
|
||||
libfreetype6 \
|
||||
libwebp-dev \
|
||||
libmagickwand-6.q16-2 \
|
||||
libwebp6 \
|
||||
libmagickwand-6.q16-3 \
|
||||
libc-client2007e \
|
||||
libfbclient2 \
|
||||
libicu52 \
|
||||
libicu57 \
|
||||
libmcrypt4 \
|
||||
libmemcachedutil2 \
|
||||
libsybdb5 \
|
||||
@@ -101,11 +102,12 @@ ENV RUN_DEPS \
|
||||
libpq5 \
|
||||
libaspell15 \
|
||||
librecode0 \
|
||||
librdkafka1 \
|
||||
snmp \
|
||||
libnghttp2-5 \
|
||||
libtidy-0.99-0 \
|
||||
libnghttp2-14 \
|
||||
libtidy5 \
|
||||
libxslt1.1 \
|
||||
libzip2 \
|
||||
libzip4 \
|
||||
ca-certificates
|
||||
|
||||
|
||||
@@ -118,6 +120,16 @@ RUN set -x \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& EXTENSION_DIR="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )" \
|
||||
&& if [ ! -d "${EXTENSION_DIR}" ]; then mkdir -p "${EXTENSION_DIR}"; fi \
|
||||
&& curl https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -L -o ioncube.tar.gz \
|
||||
&& tar xvfz ioncube.tar.gz \
|
||||
&& cd ioncube \
|
||||
&& cp "ioncube_loader_lin_7.1.so" "${EXTENSION_DIR}/ioncube.so" \
|
||||
&& cd ../ \
|
||||
&& rm -rf ioncube \
|
||||
&& rm -rf ioncube.tar.gz \
|
||||
\
|
||||
&& echo "/usr" | pecl install amqp \
|
||||
&& docker-php-ext-enable amqp \
|
||||
&& pecl install apcu \
|
||||
@@ -197,6 +209,8 @@ RUN set -x \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) recode \
|
||||
&& pecl install redis \
|
||||
&& docker-php-ext-enable redis \
|
||||
&& pecl install rdkafka \
|
||||
&& docker-php-ext-enable rdkafka \
|
||||
&& /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 \
|
||||
@@ -354,6 +368,8 @@ RUN set -x \
|
||||
&& php-fpm -m | grep -oiE '^recode$' \
|
||||
&& php -m | grep -oiE '^redis$' \
|
||||
&& php-fpm -m | grep -oiE '^redis$' \
|
||||
&& php -m | grep -oiE '^rdkafka$' \
|
||||
&& php-fpm -m | grep -oiE '^rdkafka$' \
|
||||
&& php -m | grep -oiE '^session$' \
|
||||
&& php-fpm -m | grep -oiE '^session$' \
|
||||
&& php -m | grep -oiE '^shmop$' \
|
||||
|
||||
@@ -61,6 +61,7 @@ ENV BUILD_DEPS \
|
||||
libedit-dev \
|
||||
libreadline-dev \
|
||||
librecode-dev \
|
||||
librdkafka-dev \
|
||||
libmm-dev \
|
||||
libxml2-dev \
|
||||
libssl-dev \
|
||||
@@ -102,6 +103,7 @@ ENV RUN_DEPS \
|
||||
libpq5 \
|
||||
libaspell15 \
|
||||
librecode0 \
|
||||
librdkafka1 \
|
||||
snmp \
|
||||
libnghttp2-14 \
|
||||
libtidy5 \
|
||||
@@ -119,7 +121,17 @@ RUN set -x \
|
||||
${BUILD_DEPS} \
|
||||
\
|
||||
\
|
||||
&& pecl install amqp \
|
||||
&& EXTENSION_DIR="$( php -i | grep ^extension_dir | awk -F '=>' '{print $2}' | xargs )" \
|
||||
&& if [ ! -d "${EXTENSION_DIR}" ]; then mkdir -p "${EXTENSION_DIR}"; fi \
|
||||
&& curl https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -L -o ioncube.tar.gz \
|
||||
&& tar xvfz ioncube.tar.gz \
|
||||
&& cd ioncube \
|
||||
&& cp "ioncube_loader_lin_7.2.so" "${EXTENSION_DIR}/ioncube.so" \
|
||||
&& cd ../ \
|
||||
&& rm -rf ioncube \
|
||||
&& rm -rf ioncube.tar.gz \
|
||||
\
|
||||
&& echo "/usr" | pecl install amqp \
|
||||
&& docker-php-ext-enable amqp \
|
||||
&& pecl install apcu \
|
||||
&& docker-php-ext-enable apcu \
|
||||
@@ -199,6 +211,8 @@ RUN set -x \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) recode \
|
||||
&& pecl install redis \
|
||||
&& docker-php-ext-enable redis \
|
||||
&& pecl install rdkafka \
|
||||
&& docker-php-ext-enable rdkafka \
|
||||
&& /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 \
|
||||
@@ -357,6 +371,8 @@ RUN set -x \
|
||||
&& php-fpm -m | grep -oiE '^recode$' \
|
||||
&& php -m | grep -oiE '^redis$' \
|
||||
&& php-fpm -m | grep -oiE '^redis$' \
|
||||
&& php -m | grep -oiE '^rdkafka$' \
|
||||
&& php-fpm -m | grep -oiE '^rdkafka$' \
|
||||
&& php -m | grep -oiE '^session$' \
|
||||
&& php-fpm -m | grep -oiE '^session$' \
|
||||
&& php -m | grep -oiE '^shmop$' \
|
||||
|
||||
@@ -59,6 +59,7 @@ ENV BUILD_DEPS \
|
||||
libedit-dev \
|
||||
libreadline-dev \
|
||||
librecode-dev \
|
||||
librdkafka-dev \
|
||||
libmm-dev \
|
||||
libxml2-dev \
|
||||
libssl-dev \
|
||||
@@ -101,6 +102,7 @@ ENV RUN_DEPS \
|
||||
libpq5 \
|
||||
libaspell15 \
|
||||
librecode0 \
|
||||
librdkafka1 \
|
||||
snmp \
|
||||
libnghttp2-14 \
|
||||
libhiredis0.13 \
|
||||
@@ -184,6 +186,8 @@ RUN set -x \
|
||||
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) recode \
|
||||
&& pecl install redis \
|
||||
&& docker-php-ext-enable redis \
|
||||
&& pecl install rdkafka \
|
||||
&& docker-php-ext-enable rdkafka \
|
||||
&& /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 \
|
||||
@@ -219,7 +223,7 @@ RUN set -x \
|
||||
--enable-mysqlnd \
|
||||
--enable-coroutine \
|
||||
--enable-picohttpparser \
|
||||
--enable-timewheel \
|
||||
#`--enable-timewheel` \
|
||||
#`--enable-hugepage` \
|
||||
#`--enable-asan` \
|
||||
#`--with-phpx-dir=` \
|
||||
@@ -366,6 +370,8 @@ RUN set -x \
|
||||
&& php-fpm -m | grep -oiE '^recode$' \
|
||||
&& php -m | grep -oiE '^redis$' \
|
||||
&& php-fpm -m | grep -oiE '^redis$' \
|
||||
&& php -m | grep -oiE '^rdkafka$' \
|
||||
&& php-fpm -m | grep -oiE '^rdkafka$' \
|
||||
&& php -m | grep -oiE '^session$' \
|
||||
&& php-fpm -m | grep -oiE '^session$' \
|
||||
&& php -m | grep -oiE '^shmop$' \
|
||||
|
||||
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"]
|
||||
@@ -69,6 +69,9 @@ set_postfix() {
|
||||
run "chown ${username}:${groupname} /var/mail" "${debug}"
|
||||
run "chown ${username}:${groupname} /var/mail/${username}" "${debug}"
|
||||
|
||||
# warning: specify "strict_mailbox_ownership = no" to ignore mailbox ownership mismatch
|
||||
run "postconf -e 'strict_mailbox_ownership=no'" "${debug}"
|
||||
|
||||
# Postfix configuration
|
||||
run "postconf -e 'inet_protocols=ipv4'" "${debug}"
|
||||
run "postconf -e 'virtual_alias_maps=pcre:/etc/postfix/virtual'" "${debug}"
|
||||
|
||||
@@ -10,21 +10,26 @@ set -o pipefail
|
||||
############################################################
|
||||
|
||||
_log_to_dockerlogs() {
|
||||
local conf_logfile="${1}"
|
||||
local php_fpm_conf="${1}"
|
||||
local php_ini_conf="${2}"
|
||||
{
|
||||
echo "[global]"
|
||||
echo "error_log = /proc/self/fd/2"
|
||||
echo "[www]"
|
||||
echo "access.log = /proc/self/fd/2"
|
||||
} > "${conf_logfile}"
|
||||
} > "${php_fpm_conf}"
|
||||
{
|
||||
echo "error_log = /proc/self/fd/2"
|
||||
} > "${php_ini_conf}"
|
||||
}
|
||||
|
||||
_log_to_files() {
|
||||
local conf_logfile="${1}"
|
||||
local log_dir="${2}"
|
||||
local user="${3}"
|
||||
local group="${4}"
|
||||
local debug="${5}"
|
||||
local php_fpm_conf="${1}"
|
||||
local php_ini_conf="${2}"
|
||||
local log_dir="${3}"
|
||||
local user="${4}"
|
||||
local group="${5}"
|
||||
local debug="${6}"
|
||||
|
||||
# Create Log directory and files
|
||||
if [ ! -d "${log_dir}" ]; then
|
||||
@@ -43,7 +48,10 @@ _log_to_files() {
|
||||
echo "error_log = ${log_dir}/php-fpm.error"
|
||||
echo "[www]"
|
||||
echo "access.log = ${log_dir}/php-fpm.access"
|
||||
} > "${conf_logfile}"
|
||||
} > "${php_fpm_conf}"
|
||||
{
|
||||
echo "error_log = ${log_dir}/php-fpm.error"
|
||||
} > "${php_ini_conf}"
|
||||
}
|
||||
|
||||
|
||||
@@ -77,17 +85,18 @@ is_docker_logs_enabled() {
|
||||
set_docker_logs() {
|
||||
local env_varname="${1}"
|
||||
local log_dir="${2}"
|
||||
local conf_logfile="${3}"
|
||||
local user="${4}"
|
||||
local group="${5}"
|
||||
local debug="${6}"
|
||||
local php_fpm_conf="${3}"
|
||||
local php_ini_conf="${4}"
|
||||
local user="${5}"
|
||||
local group="${6}"
|
||||
local debug="${7}"
|
||||
|
||||
local docker_logs=
|
||||
|
||||
if ! env_set "${env_varname}"; then
|
||||
log "info" "\$${env_varname} not set." "${debug}"
|
||||
log "info" "Logging to docker logs (stdout and stderr)." "${debug}"
|
||||
_log_to_dockerlogs "${conf_logfile}"
|
||||
_log_to_dockerlogs "${php_fpm_conf}" "${php_ini_conf}"
|
||||
else
|
||||
docker_logs="$( env_get "${env_varname}" )"
|
||||
|
||||
@@ -95,12 +104,12 @@ set_docker_logs() {
|
||||
if [ "${docker_logs}" = "0" ]; then
|
||||
log "info" "\$${env_varname} set to 0. Logging to files under: ${log_dir}" "${debug}"
|
||||
log "info" "Make sure to mount this directory in order to view logs" "${debug}"
|
||||
_log_to_files "${conf_logfile}" "${log_dir}" "${user}" "${group}" "${debug}"
|
||||
_log_to_files "${php_fpm_conf}" "${php_ini_conf}" "${log_dir}" "${user}" "${group}" "${debug}"
|
||||
|
||||
# Keep docker logs
|
||||
elif [ "${docker_logs}" = "1" ]; then
|
||||
log "info" "\$${env_varname} set to 1. Logging to docker logs (stdout and stderr)." "${debug}"
|
||||
_log_to_dockerlogs "${conf_logfile}"
|
||||
_log_to_dockerlogs "${php_fpm_conf}" "${php_ini_conf}"
|
||||
else
|
||||
log "err" "Invalid value for \$${env_varname}. Can only be 0 or 1. Provided: ${docker_logs}" "${debug}"
|
||||
exit 1
|
||||
|
||||
@@ -27,8 +27,8 @@ copy_ini_files() {
|
||||
'
|
||||
for ini_f in ${ini_files}; do
|
||||
ini_name="$( basename "${ini_f}" )"
|
||||
log "info" "PHP.ini: ${ini_name} -> ${ini_dst}/zzz-devilbox-${ini_name}" "${debug}"
|
||||
run "cp ${ini_f} ${ini_dst}/zzz-devilbox-${ini_name}" "${debug}"
|
||||
log "info" "PHP.ini: ${ini_name} -> ${ini_dst}/yyy-devilbox-user-runtime-${ini_name}" "${debug}"
|
||||
run "cp ${ini_f} ${ini_dst}/yyy-devilbox-user-runtime-${ini_name}" "${debug}"
|
||||
done
|
||||
run "find ${ini_dst} -type f -iname '*.ini' -exec chmod 0644 \"{}\" \;" "${debug}"
|
||||
}
|
||||
|
||||
@@ -27,12 +27,28 @@ copy_fpm_files() {
|
||||
'
|
||||
for fpm_f in ${fpm_files}; do
|
||||
fpm_name="$( basename "${fpm_f}" )"
|
||||
log "info" "PHP-FPM.conf: ${fpm_name} -> ${fpm_dst}/zzz-devilbox-${fpm_name}" "${debug}"
|
||||
run "cp ${fpm_f} ${fpm_dst}/zzz-devilbox-${fpm_name}" "${debug}"
|
||||
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
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# PHP FPM 5.3 does not allow to pass through environment variables
|
||||
# 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
|
||||
|
||||
|
||||
52
Dockerfiles/prod/data/docker-entrypoint.d/38-enable-modules.sh
Executable file
52
Dockerfiles/prod/data/docker-entrypoint.d/38-enable-modules.sh
Executable file
@@ -0,0 +1,52 @@
|
||||
#!/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}"
|
||||
return 0
|
||||
fi
|
||||
|
||||
log "info" "Enabling the following PHP modules: ${mods}" "${debug}"
|
||||
|
||||
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
|
||||
}
|
||||
@@ -15,7 +15,7 @@ set -o pipefail
|
||||
disable_modules() {
|
||||
local mod_varname="${1}"
|
||||
local debug="${2}"
|
||||
local mod_path="/usr/local/etc/php/conf.d"
|
||||
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}"
|
||||
@@ -23,17 +23,17 @@ disable_modules() {
|
||||
mods="$( env_get "${mod_varname}" )"
|
||||
|
||||
if [ -z "${mods}" ]; then
|
||||
log "warn" "\$${mod_varname} set, but empty. Not disabling any PHP modules." "${debug}"
|
||||
else
|
||||
log "info" "Disabling the following PHP modules: ${mods}" "${debug}"
|
||||
log "info" "\$${mod_varname} set, but empty. Not disabling any PHP modules." "${debug}"
|
||||
return 0
|
||||
fi
|
||||
|
||||
log "info" "Disabling the following PHP modules: ${mods}" "${debug}"
|
||||
|
||||
while read -r mod; do
|
||||
#for mod in ${mods//,/ }; do
|
||||
mod="$( echo "${mod}" | xargs )" # trim
|
||||
|
||||
# Find all config files that enable that module
|
||||
files="$( grep -Er "^(zend_)?extension.*(=|/)${mod}\.so" "${mod_path}" || true )"
|
||||
files="$( grep -Er "^(zend_)?extension.*(=|/)${mod}\.so" "${cfg_path}" || true )"
|
||||
|
||||
if [ -n "${files}" ]; then
|
||||
while read -r f; do
|
||||
@@ -44,6 +44,5 @@ disable_modules() {
|
||||
done <<< "${files}"
|
||||
fi
|
||||
done <<< "$( echo "${mods}" | tr ',' '\n' )"
|
||||
#done
|
||||
fi
|
||||
}
|
||||
@@ -28,7 +28,8 @@ PHP_FPM_DIR="/usr/local/etc/php-fpm.d"
|
||||
PHP_MAIL_LOG="/var/log/mail.log"
|
||||
|
||||
# This file holds error and access log definitions
|
||||
FPM_CONF_LOGFILE="/usr/local/etc/php-fpm.d/logfiles.conf"
|
||||
PHP_FPM_CONF_LOGFILE="${PHP_FPM_DIR}/zzz-entrypoint-logfiles.conf"
|
||||
PHP_INI_CONF_LOGFILE="${PHP_INI_DIR}/zzz-entrypoint-logfiles.ini"
|
||||
|
||||
# PHP-FPM log dir
|
||||
FPM_LOG_DIR="/var/log/php"
|
||||
@@ -79,9 +80,9 @@ set_timezone "TIMEZONE" "${PHP_INI_DIR}" "${DEBUG_LEVEL}"
|
||||
|
||||
|
||||
###
|
||||
### PHP-FPM 5.3 Env variables
|
||||
### PHP-FPM 5.2 and PHP-FPM 5.3 Env variables fix
|
||||
###
|
||||
if php -v 2>/dev/null | grep -Eoq '^PHP[[:space:]]5\.3'; then
|
||||
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
|
||||
|
||||
@@ -92,7 +93,8 @@ fi
|
||||
set_docker_logs \
|
||||
"DOCKER_LOGS" \
|
||||
"${FPM_LOG_DIR}" \
|
||||
"${FPM_CONF_LOGFILE}" \
|
||||
"${PHP_FPM_CONF_LOGFILE}" \
|
||||
"${PHP_INI_CONF_LOGFILE}" \
|
||||
"${MY_USER}" \
|
||||
"${MY_GROUP}" \
|
||||
"${DEBUG_LEVEL}"
|
||||
@@ -157,7 +159,17 @@ copy_ini_files "${PHP_CUST_INI_DIR}" "${PHP_INI_DIR}" "${DEBUG_LEVEL}"
|
||||
###
|
||||
### Copy custom PHP-FPM *.conf files
|
||||
###
|
||||
copy_fpm_files "${PHP_CUST_FPM_DIR}" "${PHP_FPM_DIR}" "${DEBUG_LEVEL}"
|
||||
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}"
|
||||
|
||||
|
||||
###
|
||||
|
||||
312
Dockerfiles/work/Dockerfile-5.2
Normal file
312
Dockerfiles/work/Dockerfile-5.2
Normal file
@@ -0,0 +1,312 @@
|
||||
# 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 \
|
||||
graphviz \
|
||||
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 \
|
||||
rsync \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
silversearcher-ag \
|
||||
subversion \
|
||||
sudo \
|
||||
tig \
|
||||
tree \
|
||||
unzip \
|
||||
vim \
|
||||
w3m \
|
||||
wget \
|
||||
whois \
|
||||
xz-utils \
|
||||
yarn \
|
||||
zsh \
|
||||
&& 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/mhsendmail \
|
||||
\
|
||||
# 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"]
|
||||
@@ -46,6 +46,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -56,12 +57,16 @@ RUN set -x \
|
||||
git \
|
||||
git-flow \
|
||||
git-svn \
|
||||
graphviz \
|
||||
hostname \
|
||||
htop \
|
||||
imagemagick \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -72,9 +77,14 @@ RUN set -x \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rsync \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -82,12 +92,15 @@ RUN set -x \
|
||||
subversion \
|
||||
sudo \
|
||||
tig \
|
||||
tree \
|
||||
unzip \
|
||||
vim \
|
||||
w3m \
|
||||
wget \
|
||||
whois \
|
||||
xz-utils \
|
||||
yarn \
|
||||
zsh \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
@@ -95,6 +108,10 @@ RUN set -x \
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
@@ -112,6 +129,10 @@ RUN set -x \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
@@ -134,18 +155,27 @@ RUN set -x \
|
||||
\
|
||||
# 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}' \
|
||||
'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}' \
|
||||
'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}' \
|
||||
'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/mhsendmail \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
@@ -187,12 +217,16 @@ RUN set -x \
|
||||
&& 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 \
|
||||
&& curl https://github.com/wp-cli/wp-cli/releases/download/v1.5.1/wp-cli-1.5.1.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 \
|
||||
@@ -253,6 +287,7 @@ RUN set -x \
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
@@ -260,14 +295,17 @@ RUN set -x \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& drush --version | grep -E '[.0-9]+' \
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& 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]+' \
|
||||
@@ -278,13 +316,16 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php.d/error-reporting.ini /usr/local/etc/php/conf.d/devilbox-error-reporting.ini
|
||||
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
|
||||
###
|
||||
|
||||
@@ -46,6 +46,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -56,12 +57,16 @@ RUN set -x \
|
||||
git \
|
||||
git-flow \
|
||||
git-svn \
|
||||
graphviz \
|
||||
hostname \
|
||||
htop \
|
||||
imagemagick \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -72,9 +77,14 @@ RUN set -x \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rsync \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -82,12 +92,15 @@ RUN set -x \
|
||||
subversion \
|
||||
sudo \
|
||||
tig \
|
||||
tree \
|
||||
unzip \
|
||||
vim \
|
||||
w3m \
|
||||
wget \
|
||||
whois \
|
||||
xz-utils \
|
||||
yarn \
|
||||
zsh \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
@@ -95,6 +108,10 @@ RUN set -x \
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
@@ -112,6 +129,13 @@ RUN set -x \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# deployer
|
||||
&& curl https://deployer.org/deployer.phar -L -o /usr/local/bin/dep \
|
||||
&& chmod +x /usr/local/bin/dep \
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
@@ -144,18 +168,27 @@ RUN set -x \
|
||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
||||
\
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
&& 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 \
|
||||
'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 \
|
||||
'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 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/mhsendmail \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
@@ -197,6 +230,10 @@ RUN set -x \
|
||||
&& 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
|
||||
@@ -266,6 +303,7 @@ RUN set -x \
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
@@ -273,15 +311,19 @@ RUN set -x \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& dep --version 2>/dev/null | grep -E 'Deployer\s*[.0-9]+' \
|
||||
&& drush --version | grep -E '[.0-9]+' \
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \
|
||||
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \
|
||||
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||
&& phalcon commands | grep -E '[.0-9]+' \
|
||||
&& phpcs --version | grep -E 'version [.0-9]+' \
|
||||
&& phpcbf --version | grep -E 'version [.0-9]+' \
|
||||
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
|
||||
&& sass --version | grep -E '[.0-9]+' \
|
||||
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||
&& webpack --version | grep -E '[.0-9]+' \
|
||||
@@ -293,13 +335,16 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php.d/error-reporting.ini /usr/local/etc/php/conf.d/devilbox-error-reporting.ini
|
||||
COPY ./data/php-ini.d/php-5.4.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.4.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
|
||||
@@ -46,6 +46,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -56,12 +57,16 @@ RUN set -x \
|
||||
git \
|
||||
git-flow \
|
||||
git-svn \
|
||||
graphviz \
|
||||
hostname \
|
||||
htop \
|
||||
imagemagick \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -72,9 +77,14 @@ RUN set -x \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rsync \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -82,12 +92,15 @@ RUN set -x \
|
||||
subversion \
|
||||
sudo \
|
||||
tig \
|
||||
tree \
|
||||
unzip \
|
||||
vim \
|
||||
w3m \
|
||||
wget \
|
||||
whois \
|
||||
xz-utils \
|
||||
yarn \
|
||||
zsh \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
@@ -95,6 +108,14 @@ RUN set -x \
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# asgardcms
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require asgardcms/asgardcms-installer \
|
||||
&& ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/asgardcms \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
@@ -112,6 +133,13 @@ RUN set -x \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# deployer
|
||||
&& curl https://deployer.org/deployer.phar -L -o /usr/local/bin/dep \
|
||||
&& chmod +x /usr/local/bin/dep \
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
@@ -147,18 +175,27 @@ RUN set -x \
|
||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
||||
\
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
&& 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 \
|
||||
'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 \
|
||||
'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 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/mhsendmail \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
@@ -200,6 +237,10 @@ RUN set -x \
|
||||
&& 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 \
|
||||
@@ -273,6 +314,8 @@ RUN set -x \
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[.0-9]+' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
@@ -280,16 +323,20 @@ RUN set -x \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& dep --version 2>/dev/null | grep -E 'Deployer\s*[.0-9]+' \
|
||||
&& drush --version | grep -E '[.0-9]+' \
|
||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \
|
||||
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \
|
||||
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||
&& phalcon commands | grep -E '[.0-9]+' \
|
||||
&& phpcs --version | grep -E 'version [.0-9]+' \
|
||||
&& phpcbf --version | grep -E 'version [.0-9]+' \
|
||||
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
|
||||
&& photon --version | grep -E 'Installer [.0-9]+' \
|
||||
&& sass --version | grep -E '[.0-9]+' \
|
||||
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||
@@ -302,13 +349,16 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php.d/error-reporting.ini /usr/local/etc/php/conf.d/devilbox-error-reporting.ini
|
||||
COPY ./data/php-ini.d/php-5.5.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.5.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
|
||||
@@ -46,6 +46,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -56,12 +57,16 @@ RUN set -x \
|
||||
git \
|
||||
git-flow \
|
||||
git-svn \
|
||||
graphviz \
|
||||
hostname \
|
||||
htop \
|
||||
imagemagick \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -72,9 +77,14 @@ RUN set -x \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rsync \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -82,12 +92,15 @@ RUN set -x \
|
||||
subversion \
|
||||
sudo \
|
||||
tig \
|
||||
tree \
|
||||
unzip \
|
||||
vim \
|
||||
w3m \
|
||||
wget \
|
||||
whois \
|
||||
xz-utils \
|
||||
yarn \
|
||||
zsh \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
@@ -95,6 +108,14 @@ RUN set -x \
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# asgardcms
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require asgardcms/asgardcms-installer \
|
||||
&& ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/asgardcms \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
@@ -112,6 +133,13 @@ RUN set -x \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# deployer
|
||||
&& curl https://deployer.org/deployer.phar -L -o /usr/local/bin/dep \
|
||||
&& chmod +x /usr/local/bin/dep \
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
@@ -147,18 +175,27 @@ RUN set -x \
|
||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
||||
\
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
&& 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 \
|
||||
'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 \
|
||||
'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 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/mhsendmail \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
@@ -200,6 +237,10 @@ RUN set -x \
|
||||
&& 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 \
|
||||
@@ -273,6 +314,8 @@ RUN set -x \
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[.0-9]+' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
@@ -280,16 +323,20 @@ RUN set -x \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& dep --version 2>/dev/null | grep -E 'Deployer\s*[.0-9]+' \
|
||||
&& drush --version | grep -E '[.0-9]+' \
|
||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \
|
||||
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \
|
||||
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||
&& phalcon commands | grep -E '[.0-9]+' \
|
||||
&& phpcs --version | grep -E 'version [.0-9]+' \
|
||||
&& phpcbf --version | grep -E 'version [.0-9]+' \
|
||||
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
|
||||
&& photon --version | grep -E 'Installer [.0-9]+' \
|
||||
&& sass --version | grep -E '[.0-9]+' \
|
||||
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||
@@ -302,13 +349,16 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php.d/error-reporting.ini /usr/local/etc/php/conf.d/devilbox-error-reporting.ini
|
||||
COPY ./data/php-ini.d/php-5.6.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-5.6.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
|
||||
@@ -46,6 +46,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -56,12 +57,16 @@ RUN set -x \
|
||||
git \
|
||||
git-flow \
|
||||
git-svn \
|
||||
graphviz \
|
||||
hostname \
|
||||
htop \
|
||||
imagemagick \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -72,9 +77,14 @@ RUN set -x \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rsync \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -82,12 +92,15 @@ RUN set -x \
|
||||
subversion \
|
||||
sudo \
|
||||
tig \
|
||||
tree \
|
||||
unzip \
|
||||
vim \
|
||||
w3m \
|
||||
wget \
|
||||
whois \
|
||||
xz-utils \
|
||||
yarn \
|
||||
zsh \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
@@ -95,6 +108,14 @@ RUN set -x \
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# asgardcms
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require asgardcms/asgardcms-installer \
|
||||
&& ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/asgardcms \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
@@ -112,6 +133,13 @@ RUN set -x \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# deployer
|
||||
&& curl https://deployer.org/deployer.phar -L -o /usr/local/bin/dep \
|
||||
&& chmod +x /usr/local/bin/dep \
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
@@ -147,18 +175,27 @@ RUN set -x \
|
||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
||||
\
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
&& 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 \
|
||||
'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 \
|
||||
'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 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/mhsendmail \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
@@ -200,6 +237,10 @@ RUN set -x \
|
||||
&& 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 \
|
||||
@@ -273,6 +314,8 @@ RUN set -x \
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[.0-9]+' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
@@ -280,16 +323,20 @@ RUN set -x \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& dep --version 2>/dev/null | grep -E 'Deployer\s*[.0-9]+' \
|
||||
&& drush --version | grep -E '[.0-9]+' \
|
||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \
|
||||
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \
|
||||
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||
&& phalcon commands | grep -E '[.0-9]+' \
|
||||
&& phpcs --version | grep -E 'version [.0-9]+' \
|
||||
&& phpcbf --version | grep -E 'version [.0-9]+' \
|
||||
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
|
||||
&& photon --version | grep -E 'Installer [.0-9]+' \
|
||||
&& sass --version | grep -E '[.0-9]+' \
|
||||
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||
@@ -302,13 +349,16 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php.d/error-reporting.ini /usr/local/etc/php/conf.d/devilbox-error-reporting.ini
|
||||
COPY ./data/php-ini.d/php-7.0.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-7.0.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
|
||||
@@ -46,6 +46,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -56,12 +57,16 @@ RUN set -x \
|
||||
git \
|
||||
git-flow \
|
||||
git-svn \
|
||||
graphviz \
|
||||
hostname \
|
||||
htop \
|
||||
imagemagick \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -72,9 +77,14 @@ RUN set -x \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rsync \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -82,12 +92,15 @@ RUN set -x \
|
||||
subversion \
|
||||
sudo \
|
||||
tig \
|
||||
tree \
|
||||
unzip \
|
||||
vim \
|
||||
w3m \
|
||||
wget \
|
||||
whois \
|
||||
xz-utils \
|
||||
yarn \
|
||||
zsh \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
@@ -95,6 +108,14 @@ RUN set -x \
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# asgardcms
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require asgardcms/asgardcms-installer \
|
||||
&& ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/asgardcms \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
@@ -112,6 +133,13 @@ RUN set -x \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# deployer
|
||||
&& curl https://deployer.org/deployer.phar -L -o /usr/local/bin/dep \
|
||||
&& chmod +x /usr/local/bin/dep \
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
@@ -147,18 +175,27 @@ RUN set -x \
|
||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
||||
\
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
&& 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 \
|
||||
'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 \
|
||||
'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 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/mhsendmail \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
@@ -200,6 +237,10 @@ RUN set -x \
|
||||
&& 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 \
|
||||
@@ -273,6 +314,8 @@ RUN set -x \
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[.0-9]+' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
@@ -280,16 +323,20 @@ RUN set -x \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& dep --version 2>/dev/null | grep -E 'Deployer\s*[.0-9]+' \
|
||||
&& drush --version | grep -E '[.0-9]+' \
|
||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \
|
||||
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \
|
||||
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||
&& phalcon commands | grep -E '[.0-9]+' \
|
||||
&& phpcs --version | grep -E 'version [.0-9]+' \
|
||||
&& phpcbf --version | grep -E 'version [.0-9]+' \
|
||||
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
|
||||
&& photon --version | grep -E 'Installer [.0-9]+' \
|
||||
&& sass --version | grep -E '[.0-9]+' \
|
||||
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||
@@ -302,13 +349,16 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php.d/error-reporting.ini /usr/local/etc/php/conf.d/devilbox-error-reporting.ini
|
||||
COPY ./data/php-ini.d/php-7.1.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-7.1.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
|
||||
@@ -46,6 +46,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -56,12 +57,16 @@ RUN set -x \
|
||||
git \
|
||||
git-flow \
|
||||
git-svn \
|
||||
graphviz \
|
||||
hostname \
|
||||
htop \
|
||||
imagemagick \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -72,9 +77,14 @@ RUN set -x \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rsync \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -82,12 +92,15 @@ RUN set -x \
|
||||
subversion \
|
||||
sudo \
|
||||
tig \
|
||||
tree \
|
||||
unzip \
|
||||
vim \
|
||||
w3m \
|
||||
wget \
|
||||
whois \
|
||||
xz-utils \
|
||||
yarn \
|
||||
zsh \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
@@ -95,6 +108,14 @@ RUN set -x \
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# asgardcms
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require asgardcms/asgardcms-installer \
|
||||
&& ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/asgardcms \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
@@ -112,6 +133,13 @@ RUN set -x \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# deployer
|
||||
&& curl https://deployer.org/deployer.phar -L -o /usr/local/bin/dep \
|
||||
&& chmod +x /usr/local/bin/dep \
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
@@ -147,18 +175,27 @@ RUN set -x \
|
||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
||||
\
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
&& 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 \
|
||||
'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 \
|
||||
'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 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/mhsendmail \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
@@ -200,6 +237,10 @@ RUN set -x \
|
||||
&& 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 \
|
||||
@@ -273,6 +314,8 @@ RUN set -x \
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[.0-9]+' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
@@ -280,16 +323,20 @@ RUN set -x \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& dep --version 2>/dev/null | grep -E 'Deployer\s*[.0-9]+' \
|
||||
&& drush --version | grep -E '[.0-9]+' \
|
||||
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \
|
||||
&& git-flow version | grep -E '[.0-9]+' \
|
||||
&& grunt --version | grep -E '[.0-9]+' \
|
||||
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \
|
||||
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \
|
||||
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \
|
||||
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \
|
||||
&& phalcon commands | grep -E '[.0-9]+' \
|
||||
&& phpcs --version | grep -E 'version [.0-9]+' \
|
||||
&& phpcbf --version | grep -E 'version [.0-9]+' \
|
||||
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \
|
||||
&& photon --version | grep -E 'Installer [.0-9]+' \
|
||||
&& sass --version | grep -E '[.0-9]+' \
|
||||
&& symfony --version | grep -E 'version\s*[.0-9]+' \
|
||||
@@ -302,13 +349,16 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php.d/error-reporting.ini /usr/local/etc/php/conf.d/devilbox-error-reporting.ini
|
||||
COPY ./data/php-ini.d/php-7.2.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-7.2.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
|
||||
@@ -46,6 +46,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -56,12 +57,16 @@ RUN set -x \
|
||||
git \
|
||||
git-flow \
|
||||
git-svn \
|
||||
graphviz \
|
||||
hostname \
|
||||
htop \
|
||||
imagemagick \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -72,9 +77,14 @@ RUN set -x \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rsync \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -82,12 +92,15 @@ RUN set -x \
|
||||
subversion \
|
||||
sudo \
|
||||
tig \
|
||||
tree \
|
||||
unzip \
|
||||
vim \
|
||||
w3m \
|
||||
wget \
|
||||
whois \
|
||||
xz-utils \
|
||||
yarn \
|
||||
zsh \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
@@ -95,6 +108,14 @@ RUN set -x \
|
||||
RUN set -x \
|
||||
# composer
|
||||
&& curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
# ansible
|
||||
&& pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
\
|
||||
# asgardcms
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require asgardcms/asgardcms-installer \
|
||||
&& ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/asgardcms \
|
||||
\
|
||||
# awesomeci
|
||||
&& git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
|
||||
&& cd /usr/local/src/awesome-ci \
|
||||
@@ -112,6 +133,13 @@ RUN set -x \
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
\
|
||||
# codeception
|
||||
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception --dev \
|
||||
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
\
|
||||
# deployer
|
||||
&& curl https://deployer.org/deployer.phar -L -o /usr/local/bin/dep \
|
||||
&& chmod +x /usr/local/bin/dep \
|
||||
# drush
|
||||
&& git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
@@ -147,18 +175,27 @@ RUN set -x \
|
||||
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
|
||||
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \
|
||||
\
|
||||
# linkcheck
|
||||
&& curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
\
|
||||
# linuxbrew
|
||||
&& git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
|
||||
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/linuxbrew \
|
||||
&& 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 \
|
||||
'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 \
|
||||
'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 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/mhsendmail \
|
||||
\
|
||||
# mysqldumpsecure
|
||||
&& git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
|
||||
&& cd /usr/local/src/mysqldump-secure \
|
||||
@@ -189,6 +226,10 @@ RUN set -x \
|
||||
&& 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 \
|
||||
@@ -262,6 +303,8 @@ RUN set -x \
|
||||
|
||||
RUN set -x \
|
||||
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \
|
||||
&& ansible --version | grep -E '^ansible [.0-9]+$' \
|
||||
&& asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[.0-9]+' \
|
||||
&& mdl --version | grep -E '[.0-9]+' \
|
||||
&& scss-lint --version | grep -E '[.0-9]+' \
|
||||
&& eslint -v | grep -E '[.0-9]+' \
|
||||
@@ -269,15 +312,19 @@ RUN set -x \
|
||||
&& mdlint --version | grep -E '[.0-9]+' \
|
||||
&& gulp --version | grep -E '[.0-9]+' \
|
||||
\
|
||||
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \
|
||||
&& dep --version 2>/dev/null | grep -E 'Deployer\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]+' \
|
||||
@@ -290,13 +337,16 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php.d/error-reporting.ini /usr/local/etc/php/conf.d/devilbox-error-reporting.ini
|
||||
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
|
||||
###
|
||||
|
||||
@@ -15,7 +15,15 @@ alias ll='ls -alp --color=always --group-directories-first'
|
||||
alias ..='cd ..'
|
||||
|
||||
# Nice PS1
|
||||
PS1="\[\e[0;31m\]$(whoami)\[\e[0m\]@\[\e[0;36m\]php-$(php -v|head -1|grep -Eo '[0-9.]+'|head -1)\[\e[0m\] in \[\e[0;34m\]\w \[\e[0m\]\$ "
|
||||
_clr_usr='\[\e[0;31m\]'
|
||||
_clr_ver='\[\e[0;36m\]'
|
||||
_clr_dir='\[\e[0;34m\]'
|
||||
_clr_off='\[\e[0m\]'
|
||||
PS1_PHP="$( php -v 2>/dev/null | grep -Eo '^PHP\s([-_.a-z0-9])+' )"
|
||||
PS1_PHP="${PS1_PHP//PHP[[:space:]]}"
|
||||
PS1_USR="$( whoami )"
|
||||
PS1="${_clr_usr}${PS1_USR}${_clr_off}@${_clr_ver}php-${PS1_PHP}${_clr_off} in ${_clr_dir}\w${_clr_off} \$ "
|
||||
|
||||
|
||||
# Show Intro
|
||||
echo
|
||||
|
||||
@@ -28,7 +28,8 @@ PHP_FPM_DIR="/usr/local/etc/php-fpm.d"
|
||||
PHP_MAIL_LOG="/var/log/mail.log"
|
||||
|
||||
# This file holds error and access log definitions
|
||||
FPM_CONF_LOGFILE="/usr/local/etc/php-fpm.d/logfiles.conf"
|
||||
PHP_FPM_CONF_LOGFILE="${PHP_FPM_DIR}/zzz-entrypoint-logfiles.conf"
|
||||
PHP_INI_CONF_LOGFILE="${PHP_INI_DIR}/zzz-entrypoint-logfiles.ini"
|
||||
|
||||
# PHP-FPM log dir
|
||||
FPM_LOG_DIR="/var/log/php"
|
||||
@@ -79,9 +80,9 @@ set_timezone "TIMEZONE" "${PHP_INI_DIR}" "${DEBUG_LEVEL}"
|
||||
|
||||
|
||||
###
|
||||
### PHP-FPM 5.3 Env variables
|
||||
### PHP-FPM 5.2 and PHP-FPM 5.3 Env variables fix
|
||||
###
|
||||
if php -v 2>/dev/null | grep -Eoq '^PHP[[:space:]]5\.3'; then
|
||||
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
|
||||
|
||||
@@ -92,7 +93,8 @@ fi
|
||||
set_docker_logs \
|
||||
"DOCKER_LOGS" \
|
||||
"${FPM_LOG_DIR}" \
|
||||
"${FPM_CONF_LOGFILE}" \
|
||||
"${PHP_FPM_CONF_LOGFILE}" \
|
||||
"${PHP_INI_CONF_LOGFILE}" \
|
||||
"${MY_USER}" \
|
||||
"${MY_GROUP}" \
|
||||
"${DEBUG_LEVEL}"
|
||||
@@ -157,7 +159,17 @@ 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}"
|
||||
|
||||
|
||||
###
|
||||
|
||||
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
|
||||
@@ -1,12 +0,0 @@
|
||||
; PHP Development configuration for errors
|
||||
|
||||
; Show all errors
|
||||
display_errors = On
|
||||
display_startup_errors = On
|
||||
|
||||
; Log all errors
|
||||
log_errors = On
|
||||
|
||||
; What errors to show/log
|
||||
error_reporting = E_ALL | E_STRICT
|
||||
xmlrpc_errors = On
|
||||
78
Makefile
78
Makefile
@@ -27,6 +27,7 @@ help:
|
||||
@printf "%s\n" "make rebuild-prod: Rebuild all prod images"
|
||||
@printf "%s\n" "make rebuild-work: Rebuild all work images"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make build-base-52: Build PHP 5.2 base image"
|
||||
@printf "%s\n" "make build-base-53: Build PHP 5.3 base image"
|
||||
@printf "%s\n" "make build-base-54: Build PHP 5.4 base image"
|
||||
@printf "%s\n" "make build-base-55: Build PHP 5.5 base image"
|
||||
@@ -36,6 +37,7 @@ help:
|
||||
@printf "%s\n" "make build-base-72: Build PHP 7.2 base image"
|
||||
@printf "%s\n" "make build-base-73: Build PHP 7.3 base image"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make build-mods-52: Build PHP 5.2 mods image"
|
||||
@printf "%s\n" "make build-mods-53: Build PHP 5.3 mods image"
|
||||
@printf "%s\n" "make build-mods-54: Build PHP 5.4 mods image"
|
||||
@printf "%s\n" "make build-mods-55: Build PHP 5.5 mods image"
|
||||
@@ -45,6 +47,7 @@ help:
|
||||
@printf "%s\n" "make build-mods-72: Build PHP 7.2 mods image"
|
||||
@printf "%s\n" "make build-mods-73: Build PHP 7.3 mods image"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make build-prod-52: Build PHP 5.2 prod image"
|
||||
@printf "%s\n" "make build-prod-53: Build PHP 5.3 prod image"
|
||||
@printf "%s\n" "make build-prod-54: Build PHP 5.4 prod image"
|
||||
@printf "%s\n" "make build-prod-55: Build PHP 5.5 prod image"
|
||||
@@ -54,7 +57,8 @@ help:
|
||||
@printf "%s\n" "make build-prod-72: Build PHP 7.2 prod image"
|
||||
@printf "%s\n" "make build-prod-73: Build PHP 7.3 prod image"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make build-work-54: Build PHP 5.3 work image"
|
||||
@printf "%s\n" "make build-work-52: Build PHP 5.2 work image"
|
||||
@printf "%s\n" "make build-work-53: Build PHP 5.3 work image"
|
||||
@printf "%s\n" "make build-work-54: Build PHP 5.4 work image"
|
||||
@printf "%s\n" "make build-work-55: Build PHP 5.5 work image"
|
||||
@printf "%s\n" "make build-work-56: Build PHP 5.6 work image"
|
||||
@@ -63,6 +67,7 @@ help:
|
||||
@printf "%s\n" "make build-work-72: Build PHP 7.2 work image"
|
||||
@printf "%s\n" "make build-work-73: Build PHP 7.3 work image"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make rebuild-base-52: Build PHP 5.2 base image"
|
||||
@printf "%s\n" "make rebuild-base-53: Build PHP 5.3 base image"
|
||||
@printf "%s\n" "make rebuild-base-54: Build PHP 5.4 base image"
|
||||
@printf "%s\n" "make rebuild-base-55: Build PHP 5.5 base image"
|
||||
@@ -72,6 +77,7 @@ help:
|
||||
@printf "%s\n" "make rebuild-base-72: Build PHP 7.2 base image"
|
||||
@printf "%s\n" "make rebuild-base-73: Build PHP 7.3 base image"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make rebuild-mods-52: Build PHP 5.2 mods image"
|
||||
@printf "%s\n" "make rebuild-mods-53: Build PHP 5.3 mods image"
|
||||
@printf "%s\n" "make rebuild-mods-54: Build PHP 5.4 mods image"
|
||||
@printf "%s\n" "make rebuild-mods-55: Build PHP 5.5 mods image"
|
||||
@@ -81,6 +87,7 @@ help:
|
||||
@printf "%s\n" "make rebuild-mods-72: Build PHP 7.2 mods image"
|
||||
@printf "%s\n" "make rebuild-mods-73: Build PHP 7.3 mods image"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make rebuild-prod-52: Build PHP 5.2 prod image"
|
||||
@printf "%s\n" "make rebuild-prod-53: Build PHP 5.3 prod image"
|
||||
@printf "%s\n" "make rebuild-prod-54: Build PHP 5.4 prod image"
|
||||
@printf "%s\n" "make rebuild-prod-55: Build PHP 5.5 prod image"
|
||||
@@ -90,6 +97,7 @@ help:
|
||||
@printf "%s\n" "make rebuild-prod-72: Build PHP 7.2 prod image"
|
||||
@printf "%s\n" "make rebuild-prod-73: Build PHP 7.3 prod image"
|
||||
@printf "\n"
|
||||
@printf "%s\n" "make rebuild-work-52: Build PHP 5.2 work image"
|
||||
@printf "%s\n" "make rebuild-work-53: Build PHP 5.3 work image"
|
||||
@printf "%s\n" "make rebuild-work-54: Build PHP 5.4 work image"
|
||||
@printf "%s\n" "make rebuild-work-55: Build PHP 5.5 work image"
|
||||
@@ -133,21 +141,23 @@ rebuild-all: rebuild-base rebuild-mods rebuild-prod rebuild-work
|
||||
###
|
||||
### Build categories
|
||||
###
|
||||
build-base: 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-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-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-53 build-work-54 build-work-55 build-work-56 build-work-70 build-work-71 build-work-72 build-work-73
|
||||
build-base: build-base-52 build-base-53 build-base-54 build-base-55 build-base-56 build-base-70 build-base-71 build-base-72 build-base-73
|
||||
build-mods: build-mods-52 build-mods-53 build-mods-54 build-mods-55 build-mods-56 build-mods-70 build-mods-71 build-mods-72 build-mods-73
|
||||
build-prod: build-prod-52 build-prod-53 build-prod-54 build-prod-55 build-prod-56 build-prod-70 build-prod-71 build-prod-72 build-prod-73
|
||||
build-work: build-work-52 build-work-53 build-work-54 build-work-55 build-work-56 build-work-70 build-work-71 build-work-72 build-work-73
|
||||
|
||||
rebuild-base: rebuild-base-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-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-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-53 rebuild-work-54 rebuild-work-55 rebuild-work-56 rebuild-work-70 rebuild-work-71 rebuild-work-72 rebuild-work-73
|
||||
rebuild-base: rebuild-base-52 rebuild-base-53 rebuild-base-54 rebuild-base-55 rebuild-base-56 rebuild-base-70 rebuild-base-71 rebuild-base-72 rebuild-base-73
|
||||
rebuild-mods: rebuild-mods-52 rebuild-mods-53 rebuild-mods-54 rebuild-mods-55 rebuild-mods-56 rebuild-mods-70 rebuild-mods-71 rebuild-mods-72 rebuild-mods-73
|
||||
rebuild-prod: rebuild-prod-52 rebuild-prod-53 rebuild-prod-54 rebuild-prod-55 rebuild-prod-56 rebuild-prod-70 rebuild-prod-71 rebuild-prod-72 rebuild-prod-73
|
||||
rebuild-work: rebuild-work-52 rebuild-work-53 rebuild-work-54 rebuild-work-55 rebuild-work-56 rebuild-work-70 rebuild-work-71 rebuild-work-72 rebuild-work-73
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Build separately
|
||||
###
|
||||
build-base-52: pull-from-52
|
||||
docker build -t devilbox/php-fpm:5.2-base -f $(location)/base/Dockerfile-5.2 $(location)/base
|
||||
build-base-53: pull-from-53
|
||||
docker build -t devilbox/php-fpm:5.3-base -f $(location)/base/Dockerfile-5.3 $(location)/base
|
||||
build-base-54: pull-from-54
|
||||
@@ -165,6 +175,8 @@ build-base-72: pull-from-72
|
||||
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:
|
||||
@@ -182,6 +194,8 @@ build-mods-72:
|
||||
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:
|
||||
@@ -199,6 +213,8 @@ build-prod-72:
|
||||
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:
|
||||
@@ -221,6 +237,8 @@ build-work-73:
|
||||
###
|
||||
### 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
|
||||
@@ -238,6 +256,8 @@ rebuild-base-72: pull-from-72
|
||||
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:
|
||||
@@ -255,6 +275,8 @@ rebuild-mods-72:
|
||||
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:
|
||||
@@ -272,6 +294,8 @@ rebuild-prod-72:
|
||||
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:
|
||||
@@ -294,28 +318,42 @@ rebuild-work-73:
|
||||
###
|
||||
### Pull base FROM images
|
||||
###
|
||||
pull-from-52:
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-5.2 | sed 's/^FROM\s*//g';)
|
||||
pull-from-53:
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-5.3 | sed 's/^FROM//g'; done)
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-5.3 | sed 's/^FROM\s*//g';)
|
||||
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\s*//g';)
|
||||
pull-from-55:
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-5.5 | sed 's/^FROM//g'; done)
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-5.5 | sed 's/^FROM\s*//g';)
|
||||
pull-from-56:
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-5.6 | sed 's/^FROM//g'; done)
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-5.6 | sed 's/^FROM\s*//g';)
|
||||
pull-from-70:
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-7.0 | sed 's/^FROM//g'; done)
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-7.0 | sed 's/^FROM\s*//g';)
|
||||
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\s*//g';)
|
||||
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\s*//g';)
|
||||
pull-from-73:
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-7.3 | sed 's/^FROM//g'; done)
|
||||
docker pull $(shell grep FROM $(location)/base/Dockerfile-7.3 | sed 's/^FROM\s*//g';)
|
||||
|
||||
|
||||
###
|
||||
### Test all
|
||||
###
|
||||
test-all: test-base test-mods test-prod test-work
|
||||
|
||||
test-base: test-base-52 test-base-53 test-base-54 test-base-55 test-base-56 test-base-70 test-base-71 test-base-72 test-base-73
|
||||
test-mods: test-mods-52 test-mods-53 test-mods-54 test-mods-55 test-mods-56 test-mods-70 test-mods-71 test-mods-72 test-mods-73
|
||||
test-prod: test-prod-52 test-prod-53 test-prod-54 test-prod-55 test-prod-56 test-prod-70 test-prod-71 test-prod-72 test-prod-73
|
||||
test-work: test-work-52 test-work-53 test-work-54 test-work-55 test-work-56 test-work-70 test-work-71 test-work-72 test-work-73
|
||||
|
||||
|
||||
###
|
||||
### Tests
|
||||
###
|
||||
test-base-52:
|
||||
./tests/test.sh 5.2 base
|
||||
test-base-53:
|
||||
./tests/test.sh 5.3 base
|
||||
test-base-54:
|
||||
@@ -333,6 +371,8 @@ test-base-72:
|
||||
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:
|
||||
@@ -350,6 +390,8 @@ test-mods-72:
|
||||
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:
|
||||
@@ -367,6 +409,8 @@ test-prod-72:
|
||||
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:
|
||||
|
||||
120
README.md
120
README.md
@@ -37,10 +37,11 @@ versions and packed with different types of integrated PHP modules. It also solv
|
||||
1. [Environment variables](#environment-variables)
|
||||
2. [Volumes](#volumes)
|
||||
3. [Ports](#ports)
|
||||
5. **[Integrated Development Environment](#integrated-development-environment)**
|
||||
5. **[PHP Default Configuration](#php-default-configuration)**
|
||||
6. **[Integrated Development Environment](#integrated-development-environment)**
|
||||
1. [What toos can you expect](#what-tools-can-you-expect)
|
||||
2. [What else is available](#what-else-is-available)
|
||||
6. **[Examples](#examples)**
|
||||
7. **[Examples](#examples)**
|
||||
1. [Provide PHP-FPM port to host](#provide-php-fpm-port-to-host)
|
||||
2. [Alter PHP-FPM and system timezone](#alter-php-fpm-and-system-timezone)
|
||||
3. [Load custom PHP configuration](#load-custom-php-configuration)
|
||||
@@ -50,10 +51,10 @@ versions and packed with different types of integrated PHP modules. It also solv
|
||||
7. [Launch Postfix for mail-catching](#launch-postfix-for-mail-catching)
|
||||
8. [Webserver and PHP-FPM](#webserver-and-php-fpm)
|
||||
9. [Create MySQL Backups](#create-mysql-backups)
|
||||
7. **[Automated builds](#automated-builds)**
|
||||
8. **[Contributing](#contributing)**
|
||||
9. **[Credits](#credits)**
|
||||
10. **[License](#license)**
|
||||
8. **[Automated builds](#automated-builds)**
|
||||
9. **[Contributing](#contributing)**
|
||||
10. **[Credits](#credits)**
|
||||
11. **[License](#license)**
|
||||
|
||||
----
|
||||
|
||||
@@ -172,12 +173,19 @@ The following table shows a more complete overview about the offered Docker imag
|
||||
<tbody>
|
||||
|
||||
<tr>
|
||||
<td rowspan="8"><strong>base</strong></td>
|
||||
<td rowspan="9"><strong>base</strong></td>
|
||||
<td><code>devilbox/php-fpm:5.2-base</code></td>
|
||||
<td>
|
||||
<a href="https://microbadger.com/images/devilbox/php-fpm"><img src="https://images.microbadger.com/badges/image/devilbox/php-fpm:5.2-base.svg" /></a>
|
||||
<a href="https://microbadger.com/images/devilbox/php-fpm"><img src="https://images.microbadger.com/badges/version/devilbox/php-fpm:5.2-base.svg" /></a>
|
||||
</td>
|
||||
</tr>
|
||||
<td><code>devilbox/php-fpm:5.3-base</code></td>
|
||||
<td>
|
||||
<a href="https://microbadger.com/images/devilbox/php-fpm"><img src="https://images.microbadger.com/badges/image/devilbox/php-fpm:5.3-base.svg" /></a>
|
||||
<a href="https://microbadger.com/images/devilbox/php-fpm"><img src="https://images.microbadger.com/badges/version/devilbox/php-fpm:5.3-base.svg" /></a>
|
||||
</td>
|
||||
</tr>
|
||||
</tr>
|
||||
<td><code>devilbox/php-fpm:5.4-base</code></td>
|
||||
<td>
|
||||
@@ -229,7 +237,14 @@ The following table shows a more complete overview about the offered Docker imag
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td rowspan="8"><strong>mods</strong></td>
|
||||
<td rowspan="9"><strong>mods</strong></td>
|
||||
<td><code>devilbox/php-fpm:5.2-mods</code></td>
|
||||
<td>
|
||||
<a href="https://microbadger.com/images/devilbox/php-fpm"><img src="https://images.microbadger.com/badges/image/devilbox/php-fpm:5.2-mods.svg" /></a>
|
||||
<a href="https://microbadger.com/images/devilbox/php-fpm"><img src="https://images.microbadger.com/badges/version/devilbox/php-fpm:5.2-mods.svg" /></a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>devilbox/php-fpm:5.3-mods</code></td>
|
||||
<td>
|
||||
<a href="https://microbadger.com/images/devilbox/php-fpm"><img src="https://images.microbadger.com/badges/image/devilbox/php-fpm:5.3-mods.svg" /></a>
|
||||
@@ -287,7 +302,14 @@ The following table shows a more complete overview about the offered Docker imag
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td rowspan="8"><strong>prod</strong></td>
|
||||
<td rowspan="9"><strong>prod</strong></td>
|
||||
<td><code>devilbox/php-fpm:5.2-prod</code></td>
|
||||
<td>
|
||||
<a href="https://microbadger.com/images/devilbox/php-fpm"><img src="https://images.microbadger.com/badges/image/devilbox/php-fpm:5.2-prod.svg" /></a>
|
||||
<a href="https://microbadger.com/images/devilbox/php-fpm"><img src="https://images.microbadger.com/badges/version/devilbox/php-fpm:5.2-prod.svg" /></a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>devilbox/php-fpm:5.3-prod</code></td>
|
||||
<td>
|
||||
<a href="https://microbadger.com/images/devilbox/php-fpm"><img src="https://images.microbadger.com/badges/image/devilbox/php-fpm:5.3-prod.svg" /></a>
|
||||
@@ -345,7 +367,14 @@ The following table shows a more complete overview about the offered Docker imag
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td rowspan="8"><strong>work</strong></td>
|
||||
<td rowspan="9"><strong>work</strong></td>
|
||||
<td><code>devilbox/php-fpm:5.2-work</code></td>
|
||||
<td>
|
||||
<a href="https://microbadger.com/images/devilbox/php-fpm"><img src="https://images.microbadger.com/badges/image/devilbox/php-fpm:5.2-work.svg" /></a>
|
||||
<a href="https://microbadger.com/images/devilbox/php-fpm"><img src="https://images.microbadger.com/badges/version/devilbox/php-fpm:5.2-work.svg" /></a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>devilbox/php-fpm:5.3-work</code></td>
|
||||
<td>
|
||||
<a href="https://microbadger.com/images/devilbox/php-fpm"><img src="https://images.microbadger.com/badges/image/devilbox/php-fpm:5.3-work.svg" /></a>
|
||||
@@ -466,45 +495,50 @@ Check out this table to see which Docker image provides what PHP modules.
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th>5.2</th>
|
||||
<td id="52-base">ctype, curl, date, dom, filter, hash, iconv, json, libxml, mbstring, mysql, mysqli, openssl, pcre, PDO, pdo_mysql, pdo_sqlite, posix, readline, Reflection, session, SimpleXML, soap, SPL, SQLite, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
|
||||
<td id="52-mods">amqp, bcmath, bz2, calendar, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, hash, iconv, igbinary, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, msgpack, mysql, mysqli, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, SQLite, standard, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>5.3</th>
|
||||
<td id="53-base">Core, ctype, curl, date, dom, ereg, fileinfo, filter, hash, iconv, json, libxml, mysql, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, recode, Reflection, session, SimpleXML, SPL, SQLite, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
|
||||
<td id="53-mods">amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, SQLite, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
<td id="53-mods">amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, SQLite, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>5.4</th>
|
||||
<td id="54-base">Core, ctype, curl, date, dom, ereg, fileinfo, filter, hash, iconv, json, libxml, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, recode, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
|
||||
<td id="54-mods">amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
<td id="54-mods">amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>5.5</th>
|
||||
<td id="55-base">Core, ctype, curl, date, dom, ereg, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
|
||||
<td id="55-mods">amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
<td id="55-mods">amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>5.6</th>
|
||||
<td id="56-base">Core, ctype, curl, date, dom, ereg, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mhash, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
|
||||
<td id="56-mods">amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mhash, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
<td id="56-mods">amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mhash, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>7.0</th>
|
||||
<td id="70-base">Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
|
||||
<td id="70-mods">amqp, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
<td id="70-mods">amqp, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>7.1</th>
|
||||
<td id="71-base">Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
|
||||
<td id="71-mods">amqp, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
<td id="71-mods">amqp, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>7.2</th>
|
||||
<td id="72-base">Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
|
||||
<td id="72-mods">amqp, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
<td id="72-mods">amqp, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>7.3</th>
|
||||
<td id="73-base">Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
|
||||
<td id="73-mods">apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcached, mongodb, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
<td id="73-mods">apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcached, mongodb, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@@ -515,6 +549,7 @@ Check out this table to see which Docker image provides what PHP modules.
|
||||
|
||||
#### Image: base
|
||||
```shell
|
||||
docker pull devilbox/php-fpm:5.2-base
|
||||
docker pull devilbox/php-fpm:5.3-base
|
||||
docker pull devilbox/php-fpm:5.4-base
|
||||
docker pull devilbox/php-fpm:5.5-base
|
||||
@@ -529,6 +564,7 @@ Generic PHP-FPM base image. Use it to derive your own php-fpm docker image from
|
||||
|
||||
#### Image: mods
|
||||
```shell
|
||||
docker pull devilbox/php-fpm:5.2-mods
|
||||
docker pull devilbox/php-fpm:5.3-mods
|
||||
docker pull devilbox/php-fpm:5.4-mods
|
||||
docker pull devilbox/php-fpm:5.5-mods
|
||||
@@ -543,6 +579,7 @@ Generic PHP-FPM image with fully loaded extensions. Use it to derive your own ph
|
||||
|
||||
#### Image: prod
|
||||
```shell
|
||||
docker pull devilbox/php-fpm:5.2-prod
|
||||
docker pull devilbox/php-fpm:5.3-prod
|
||||
docker pull devilbox/php-fpm:5.4-prod
|
||||
docker pull devilbox/php-fpm:5.5-prod
|
||||
@@ -557,6 +594,7 @@ Devilbox production image. This Docker image comes with many injectables, port-f
|
||||
|
||||
#### Image: work
|
||||
```shell
|
||||
docker pull devilbox/php-fpm:5.2-work
|
||||
docker pull devilbox/php-fpm:5.3-work
|
||||
docker pull devilbox/php-fpm:5.4-work
|
||||
docker pull devilbox/php-fpm:5.5-work
|
||||
@@ -610,7 +648,7 @@ Have a look at the following table to see all supported environment variables fo
|
||||
<td colspan="5"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td rowspan="5"><strong>prod</strong><br/><br/><strong>work</strong></td>
|
||||
<td rowspan="6"><strong>prod</strong><br/><br/><strong>work</strong></td>
|
||||
<td><code>TIMEZONE</code></td>
|
||||
<td>string</td>
|
||||
<td><code>UTC</code></td>
|
||||
@@ -622,6 +660,12 @@ Have a look at the following table to see all supported environment variables fo
|
||||
<td><code>1</code></td>
|
||||
<td>By default all Docker images are configured to output their PHP-FPM access and error logs to stdout and stderr. Those which support it can change the behaviour to log into files inside the container. Their respective directories are available as volumes that can be mounted to the host computer. This feature might help developer who are more comfortable with tailing or searching through actual files instead of using docker logs.<br/><br/>Set this variable to <code>0</code> in order to enable logging to files. Log files are avilable under <code>/var/log/php/</code> which is also a docker volume that can be mounted locally.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>ENABLE_MODULES</code></td>
|
||||
<td>string</td>
|
||||
<td><code>''</code></td>
|
||||
<td>Comma separated list of PHP modules to enable, which are not enabled by default.<br/><strong>Example:</strong><br/><code>ENABLE_MODULES=ioncube</code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>DISABLE_MODULES</code></td>
|
||||
<td>string</td>
|
||||
@@ -742,6 +786,20 @@ Have a look at the following table to see all offered exposed ports for each Doc
|
||||
|
||||
|
||||
|
||||
<h2><img id="php-default-configuration" width="20" src="https://github.com/devilbox/artwork/raw/master/submissions_logo/cytopia/01/png/logo_64_trans.png"> PHP Default Configuration</h2>
|
||||
|
||||
Each PHP version is using the same sane default php.ini values, making it pain-free to switch versions and not having to worry about different php.ini settings.
|
||||
**Note:** Flavours alway inherit the settings from its parent flavour if they have no own configuration.
|
||||
|
||||
| Flavour | Applied php.ini files|
|
||||
|---------|------------------------------------------|
|
||||
| base | [php.ini](Dockerfiles/base/data/php-ini.d/) and [php-fpm.conf](Dockerfiles/base/data/php-fpm.conf/) |
|
||||
| mods | inherits from base |
|
||||
| prod | inherits from base |
|
||||
| work | [php.ini](Dockerfiles/work/data/php-ini.d/) [php-fpm.conf](Dockerfiles/work/data/php-fpm.conf/) |
|
||||
|
||||
|
||||
|
||||
<h2><img id="integrated-development-environment" width="20" src="https://github.com/devilbox/artwork/raw/master/submissions_logo/cytopia/01/png/logo_64_trans.png"> Integrated Development Environment</h2>
|
||||
|
||||
If you plan to use the PHP-FPM image for development, hence being able to execute common commands inside the container itself, you should go with the **work** Image.
|
||||
@@ -760,14 +818,30 @@ You want to use tools such as `git`, `drush`, `composer`, `npm`, `eslint`, `phpc
|
||||
<th>Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tr>
|
||||
<td><a href="https://www.ansible.com/">Ansible</a></td>
|
||||
<td>Automation tool.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://asgardcms.com/install">asgardcms</a></td>
|
||||
<td>AsgardCMS cli installer.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/cytopia/awesome-ci">awesome-ci</a></td>
|
||||
<td>Various linting and source code analyzing tools.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://codeception.com/">codeception</a></td>
|
||||
<td>Elegant and efficient testing for PHP.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://getcomposer.org">composer</a></td>
|
||||
<td>Dependency Manager for PHP.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://deployer.org/">deployer</a></td>
|
||||
<td>Deployment tool for PHP.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://drupalconsole.com">drupal-console</a></td>
|
||||
<td>The Drupal CLI. A tool to generate boilerplate code, interact with and debug Drupal.</td>
|
||||
@@ -804,6 +878,10 @@ You want to use tools such as `git`, `drush`, `composer`, `npm`, `eslint`, `phpc
|
||||
<td><a href="https://github.com/laravel/installer">laravel installer</a></td>
|
||||
<td>A CLI tool to easily install and manage the laravel framework.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/cytopia/linkcheck">linkcheck</a></td>
|
||||
<td>Search for URLs in files (optionally limited by extension) and validate their HTTP status code.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="http://linuxbrew.sh">linuxbrew</a></td>
|
||||
<td>The Homebrew package manager for Linux.</td>
|
||||
@@ -852,6 +930,10 @@ You want to use tools such as `git`, `drush`, `composer`, `npm`, `eslint`, `phpc
|
||||
<td><a href="https://github.com/brigade/scss-lint">scss-lint</a></td>
|
||||
<td>Sass/CSS command line linter.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://www.openssh.com/">ssh</a></td>
|
||||
<td>OpenSSH command line client.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="https://github.com/symfony/symfony-installer">symfony installer</a></td>
|
||||
<td>This is the official installer to start new projects based on the Symfony full-stack framework.</td>
|
||||
|
||||
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,7 @@
|
||||
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-base.j2 instead.
|
||||
{% if php_version == 5.3 %}
|
||||
{% 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
|
||||
@@ -26,7 +28,8 @@ LABEL \
|
||||
ENV MY_USER="devilbox" \
|
||||
MY_GROUP="devilbox" \
|
||||
MY_UID="1000" \
|
||||
MY_GID="1000"
|
||||
MY_GID="1000" \
|
||||
PHP_VERSION="{{ php_version }}"
|
||||
|
||||
|
||||
###
|
||||
@@ -62,13 +65,11 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php-ini.d/php-{{ php_version }}.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-{{ php_version }}.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d /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 php_version == 5.3 %}
|
||||
COPY ./data/php-fpm.d-docker-5.3.conf /usr/local/etc/php-fpm.d/docker.conf
|
||||
{% endif %}
|
||||
|
||||
|
||||
{% if debug %}
|
||||
|
||||
@@ -113,6 +113,9 @@ RUN set -x \
|
||||
{% endif %}
|
||||
&& docker-php-ext-enable {{ ext }} \
|
||||
&& cd / && rm -rf /tmp/{{ ext }} \
|
||||
{# ---- 4.) CUSTOM ---- #}
|
||||
{% elif extensions_available[ext][php_version]['type'] == 'custom' %}
|
||||
&& {{ extensions_available[ext][php_version]['command'] }} \
|
||||
{% endif %}
|
||||
{# ---------- Installation (generic) ---------- #}
|
||||
{% elif 'all' in extensions_available[ext] and 'type' in extensions_available[ext]['all'] %}
|
||||
@@ -147,6 +150,9 @@ RUN set -x \
|
||||
{% endif %}
|
||||
&& docker-php-ext-enable {{ ext }} \
|
||||
&& cd / && rm -rf /tmp/{{ ext }} \
|
||||
{# ---- 4.) CUSTOM ---- #}
|
||||
{% elif extensions_available[ext]['all']['type'] == 'custom' %}
|
||||
&& {{ extensions_available[ext]['all']['command'] }} \
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
@@ -181,6 +187,8 @@ RUN set -x \
|
||||
{% if ext == 'opcache' %}
|
||||
&& php -m | grep -oiE '^Zend Opcache$' \
|
||||
&& php-fpm -m | grep -oiE '^Zend Opcache$' \
|
||||
{% elif ext == 'ioncube' %}
|
||||
{# Not enabled #}
|
||||
{% else %}
|
||||
&& php -m | grep -oiE '^{{ ext }}$' \
|
||||
&& php-fpm -m | grep -oiE '^{{ ext }}$' \
|
||||
|
||||
@@ -61,6 +61,7 @@ RUN set -x \
|
||||
autoconf \
|
||||
automake \
|
||||
bash-completion \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
coreutils \
|
||||
curl \
|
||||
@@ -71,12 +72,16 @@ RUN set -x \
|
||||
git \
|
||||
git-flow \
|
||||
git-svn \
|
||||
graphviz \
|
||||
hostname \
|
||||
htop \
|
||||
imagemagick \
|
||||
iputils-ping \
|
||||
less \
|
||||
libc-dev \
|
||||
libffi-dev\
|
||||
libssl-dev\
|
||||
libyaml-dev \
|
||||
make \
|
||||
mongodb-org-shell \
|
||||
mongodb-org-tools \
|
||||
@@ -87,9 +92,14 @@ RUN set -x \
|
||||
netcat \
|
||||
nodejs \
|
||||
openssh-client \
|
||||
patch \
|
||||
postgresql-client \
|
||||
python-cffi \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-wheel \
|
||||
redis-tools \
|
||||
rsync \
|
||||
rubygems \
|
||||
ruby-dev \
|
||||
shellcheck \
|
||||
@@ -97,12 +107,15 @@ RUN set -x \
|
||||
subversion \
|
||||
sudo \
|
||||
tig \
|
||||
tree \
|
||||
unzip \
|
||||
vim \
|
||||
w3m \
|
||||
wget \
|
||||
whois \
|
||||
xz-utils \
|
||||
yarn \
|
||||
zsh \
|
||||
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
@@ -184,13 +197,16 @@ RUN set -x \
|
||||
###
|
||||
### Copy files
|
||||
###
|
||||
COPY ./data/php.d/error-reporting.ini /usr/local/etc/php/conf.d/devilbox-error-reporting.ini
|
||||
COPY ./data/php-ini.d/php-{{ php_version }}.ini /usr/local/etc/php/conf.d/xxx-devilbox-default-php.ini
|
||||
COPY ./data/php-fpm.conf/php-fpm-{{ php_version }}.conf /usr/local/etc/php-fpm.conf
|
||||
|
||||
COPY ./data/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
COPY ./data/docker-entrypoint.d/*.sh /docker-entrypoint.d/
|
||||
COPY ./data/bash-devilbox /etc/bash-devilbox
|
||||
COPY ./data/sudo-devilbox /etc/sudoers.d/devilbox
|
||||
|
||||
|
||||
|
||||
###
|
||||
### Volumes
|
||||
###
|
||||
|
||||
@@ -1,24 +1,15 @@
|
||||
---
|
||||
|
||||
template_files:
|
||||
- src: DOCKERFILES/Dockerfile-base.j2
|
||||
dst: "../../Dockerfiles/base/Dockerfile-{{ php_version }}"
|
||||
- src: DOCKERFILES/Dockerfile-mods.j2
|
||||
dst: "../../Dockerfiles/mods/Dockerfile-{{ php_version }}"
|
||||
- src: DOCKERFILES/Dockerfile-prod.j2
|
||||
dst: "../../Dockerfiles/prod/Dockerfile-{{ php_version }}"
|
||||
- src: DOCKERFILES/Dockerfile-work.j2
|
||||
dst: "../../Dockerfiles/work/Dockerfile-{{ php_version }}"
|
||||
|
||||
|
||||
|
||||
|
||||
# Adds self-validating checks to Dockerfile
|
||||
# turn off for final build
|
||||
debug: True
|
||||
################################################################################
|
||||
# Variables for rendering Dockerfiles and configuration
|
||||
################################################################################
|
||||
|
||||
|
||||
###
|
||||
### Available PHP versions
|
||||
###
|
||||
php_all_versions:
|
||||
- 5.2
|
||||
- 5.3
|
||||
- 5.4
|
||||
- 5.5
|
||||
@@ -29,6 +20,159 @@ php_all_versions:
|
||||
- 7.3
|
||||
|
||||
|
||||
###
|
||||
### PHP settings equal for php.ini and php-fpm.comf (used below)
|
||||
###
|
||||
php_timeout: 120
|
||||
|
||||
###
|
||||
### PHP.ini
|
||||
###
|
||||
php_settings_ini:
|
||||
# ---- Sane default ----
|
||||
base:
|
||||
# Memory
|
||||
memory_limit: 512M
|
||||
# Timeouts
|
||||
max_execution_time: "{{ php_timeout }}"
|
||||
max_input_time: "{{ php_timeout }}"
|
||||
# Uploads
|
||||
# Note: "post_max_size" should be greater than "upload_max_filesize"
|
||||
post_max_size: 72M
|
||||
upload_max_filesize: 64M
|
||||
max_file_uploads: 20
|
||||
# Variables
|
||||
variables_order: EGPCS
|
||||
max_input_vars: 8000
|
||||
max_input_nesting_level: 64
|
||||
# Error reporting
|
||||
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'
|
||||
|
||||
# ---- Inherits from base ----
|
||||
mods:
|
||||
# ---- Inherits from base ----
|
||||
prod:
|
||||
# ---- Inherits from base and overwrites certain values ----
|
||||
work:
|
||||
# Error reporting
|
||||
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'
|
||||
|
||||
|
||||
###
|
||||
### PHP-FPM.conf
|
||||
###
|
||||
php_settings_fpm:
|
||||
# ---- Sane default ----
|
||||
base:
|
||||
# Docker
|
||||
clear_env: 'no'
|
||||
catch_workers_output: 'yes'
|
||||
# Timeouts
|
||||
request_terminate_timeout: "{{ php_timeout }}s"
|
||||
# Network
|
||||
listen: 9000
|
||||
# Backlog
|
||||
listen_backlog: 1024
|
||||
# Logging
|
||||
log_level: notice
|
||||
error_log: /proc/self/fd/2
|
||||
access_log: /proc/self/fd/2
|
||||
# Worker
|
||||
pm: ondemand
|
||||
pm_max_children: 50 # pm: dynamic, ondemand or static
|
||||
pm_start_servers: 4 # only for pm: dynamic (min_spare + (max_spare-min_spare)/2
|
||||
pm_min_spare_servers: 2 # only for pm: dynamic
|
||||
pm_max_spare_servers: 6 # only for pm: dynamic
|
||||
pm_max_requests: 500 # pm: dynamic or ondemand
|
||||
pm_process_idle_timeout: 10s # only for pm: ondemand
|
||||
|
||||
# User/Group
|
||||
user: devilbox
|
||||
group: devilbox
|
||||
# ---- Inherits from base ----
|
||||
mods:
|
||||
# ---- Inherits from base ----
|
||||
prod:
|
||||
# ---- Inherits from base and overwrites certain values ----
|
||||
work:
|
||||
|
||||
|
||||
###
|
||||
### Templates for PHP flavours (base, mods, prod and work) for all PHP versions
|
||||
###
|
||||
|
||||
# Dockerfiles for base, mods, prod and work
|
||||
template_dockerfiles:
|
||||
- src: DOCKERFILES/Dockerfile-base.j2
|
||||
dst: "../../Dockerfiles/base/Dockerfile-{{ php_version }}"
|
||||
- src: DOCKERFILES/Dockerfile-mods.j2
|
||||
dst: "../../Dockerfiles/mods/Dockerfile-{{ php_version }}"
|
||||
- src: DOCKERFILES/Dockerfile-prod.j2
|
||||
dst: "../../Dockerfiles/prod/Dockerfile-{{ php_version }}"
|
||||
- src: DOCKERFILES/Dockerfile-work.j2
|
||||
dst: "../../Dockerfiles/work/Dockerfile-{{ php_version }}"
|
||||
|
||||
# Configuration files for base, mods, prod and work
|
||||
template_configurations:
|
||||
# php.ini
|
||||
- src: CONFIGURATIONS/php.ini.j2
|
||||
dst: "../../Dockerfiles/base/data/php-ini.d/php-{{ php_version }}.ini"
|
||||
cfg: "{{ php_settings_ini }}"
|
||||
key: base
|
||||
alt: base
|
||||
- src: CONFIGURATIONS/php.ini.j2
|
||||
dst: "../../Dockerfiles/work/data/php-ini.d/php-{{ php_version }}.ini"
|
||||
cfg: "{{ php_settings_ini }}"
|
||||
key: work
|
||||
alt: base # Alternative key to use when definition is not set in 'work'
|
||||
# php-fpm.conf
|
||||
- src: CONFIGURATIONS/php-fpm.conf.j2
|
||||
dst: "../../Dockerfiles/base/data/php-fpm.conf/php-fpm-{{ php_version }}.conf"
|
||||
cfg: "{{ php_settings_fpm }}"
|
||||
key: base
|
||||
alt: base
|
||||
- src: CONFIGURATIONS/php-fpm.conf.j2
|
||||
dst: "../../Dockerfiles/work/data/php-fpm.conf/php-fpm-{{ php_version }}.conf"
|
||||
cfg: "{{ php_settings_fpm }}"
|
||||
key: work
|
||||
alt: base
|
||||
|
||||
|
||||
###
|
||||
### Variables to be used in this file (group_vars/all.yml)
|
||||
###
|
||||
|
||||
# Adds self-validating checks to Dockerfile
|
||||
# turn off for final build
|
||||
debug: True
|
||||
|
||||
# Global variables
|
||||
compose_home: /usr/local/src/composer
|
||||
|
||||
|
||||
################################################################################
|
||||
# Defines for Dockerfile "work"
|
||||
@@ -54,17 +198,24 @@ software_enabled:
|
||||
# Composer needs to be first, others rely on it
|
||||
- composer
|
||||
# Normal packages start here
|
||||
- ansible
|
||||
- asgardcms
|
||||
- awesomeci
|
||||
- codeception
|
||||
- deployer
|
||||
- drush
|
||||
- drupalconsole
|
||||
- gitflow
|
||||
- grunt
|
||||
- laravel
|
||||
- linkcheck
|
||||
- linuxbrew
|
||||
- mhsendmail
|
||||
- mysqldumpsecure
|
||||
- phalcon
|
||||
- phpcs
|
||||
- phpcbf
|
||||
- phpunit
|
||||
- photon
|
||||
- sass
|
||||
- symfony
|
||||
@@ -75,7 +226,6 @@ software_enabled:
|
||||
- cleanup
|
||||
|
||||
|
||||
|
||||
###
|
||||
### All available extra repositories
|
||||
###
|
||||
@@ -140,6 +290,19 @@ apt_repositories_available:
|
||||
# pre: [optional] Run command after 'command:' statement
|
||||
#
|
||||
software_available:
|
||||
asgardcms:
|
||||
disabled: [5.2, 5.3, 5.4]
|
||||
check: asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[.0-9]+'
|
||||
all:
|
||||
command: |
|
||||
COMPOSER_HOME="{{ compose_home }}" composer global require asgardcms/asgardcms-installer \
|
||||
&& ln -s {{ compose_home }}/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/asgardcms \
|
||||
ansible:
|
||||
check: ansible --version | grep -E '^ansible [.0-9]+$'
|
||||
all:
|
||||
command: |
|
||||
pip install --upgrade setuptools \
|
||||
&& pip install ansible \
|
||||
awesomeci:
|
||||
check: |
|
||||
mdl --version | grep -E '[.0-9]+' \
|
||||
@@ -167,11 +330,24 @@ software_available:
|
||||
&& npm install -g mdlint \
|
||||
&& npm install -g gulp \
|
||||
composer:
|
||||
disabled: [5.2]
|
||||
check: composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+'
|
||||
all:
|
||||
command: curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
|
||||
deployer:
|
||||
disabled: [5.2, 5.3]
|
||||
check: dep --version 2>/dev/null | grep -E 'Deployer\s*[.0-9]+'
|
||||
all:
|
||||
command: curl https://deployer.org/deployer.phar -L -o /usr/local/bin/dep
|
||||
post: chmod +x /usr/local/bin/dep
|
||||
drush:
|
||||
disabled: [5.2]
|
||||
check: drush --version | grep -E '[.0-9]+'
|
||||
5.2:
|
||||
pre: |
|
||||
git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
&& cd /usr/local/src/drush \
|
||||
&& git checkout 7.4.0 \
|
||||
5.3:
|
||||
pre: |
|
||||
git clone https://github.com/drush-ops/drush.git /usr/local/src/drush \
|
||||
@@ -201,8 +377,15 @@ software_available:
|
||||
&& rm -rf /usr/local/src/drush/examples \
|
||||
&& rm -rf /usr/local/src/drush/misc \
|
||||
&& rm -rf /usr/local/src/drush/tests \
|
||||
codeception:
|
||||
disabled: [5.2]
|
||||
check: codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$'
|
||||
all:
|
||||
command: |
|
||||
COMPOSER_HOME="{{ compose_home }}" composer global require codeception/codeception --dev \
|
||||
&& ln -s {{ compose_home }}/vendor/codeception/codeception/codecept /usr/local/bin/codecept \
|
||||
drupalconsole:
|
||||
disabled: [5.3, 5.4]
|
||||
disabled: [5.2, 5.3, 5.4]
|
||||
check: drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]'
|
||||
all:
|
||||
command: curl https://drupalconsole.com/installer -L -o /usr/local/bin/drupal
|
||||
@@ -221,7 +404,7 @@ software_available:
|
||||
command: npm install -g grunt grunt-cli
|
||||
laravel:
|
||||
check: laravel --version | grep -E '(Installer|version)\s*[.0-9]+'
|
||||
disabled: [5.3]
|
||||
disabled: [5.2, 5.3]
|
||||
5.4:
|
||||
pre: |
|
||||
git clone https://github.com/laravel/installer /usr/local/src/laravel-installer \
|
||||
@@ -252,6 +435,12 @@ software_available:
|
||||
&& 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:
|
||||
check: linkcheck --version | grep -E '^linkcheck\sv[.0-9]+'
|
||||
all:
|
||||
command: |
|
||||
curl https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
|
||||
&& chmod +x /usr/local/bin/linkcheck \
|
||||
linuxbrew:
|
||||
check: su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+'
|
||||
all:
|
||||
@@ -259,13 +448,19 @@ software_available:
|
||||
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}' \
|
||||
'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}' \
|
||||
'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}' \
|
||||
'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:
|
||||
all:
|
||||
command: |
|
||||
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/mhsendmail \
|
||||
mysqldumpsecure:
|
||||
check: mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+'
|
||||
all:
|
||||
@@ -291,7 +486,7 @@ software_available:
|
||||
&& cd / \
|
||||
&& rm -rf /usr/local/src/mysqldump-secure \
|
||||
phalcon:
|
||||
disabled: [7.3]
|
||||
disabled: [5.2, 7.3]
|
||||
check: phalcon commands | grep -E '[.0-9]+'
|
||||
5.3:
|
||||
pre: |
|
||||
@@ -316,6 +511,10 @@ software_available:
|
||||
&& rm -rf /usr/local/src/phalcon-devtools/.git \
|
||||
phpcs:
|
||||
check: phpcs --version | grep -E 'version [.0-9]+'
|
||||
5.2:
|
||||
command: |
|
||||
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 \
|
||||
5.3:
|
||||
command: |
|
||||
curl -qL https://github.com/squizlabs/PHP_CodeSniffer/releases/download/2.9.0/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \
|
||||
@@ -326,6 +525,10 @@ software_available:
|
||||
&& chmod +x /usr/local/bin/phpcs \
|
||||
phpcbf:
|
||||
check: phpcbf --version | grep -E 'version [.0-9]+'
|
||||
5.2:
|
||||
command: |
|
||||
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 \
|
||||
5.3:
|
||||
command: |
|
||||
curl -qL https://github.com/squizlabs/PHP_CodeSniffer/releases/download/2.9.0/phpcbf.phar > /usr/local/bin/phpcbf 2>/dev/null \
|
||||
@@ -334,25 +537,56 @@ software_available:
|
||||
command: |
|
||||
curl -q https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar > /usr/local/bin/phpcbf 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpcbf \
|
||||
photon:
|
||||
check: photon --version | grep -E 'Installer [.0-9]+'
|
||||
disabled: [5.3, 5.4]
|
||||
phpunit:
|
||||
disabled: [5.2]
|
||||
check: phpunit --version | grep -iE '^PHPUnit\s[.0-9]+'
|
||||
5.3:
|
||||
command: |
|
||||
curl -qL https://phar.phpunit.de/phpunit-4.phar > /usr/local/bin/phpunit 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpunit \
|
||||
5.4:
|
||||
command: |
|
||||
curl -qL https://phar.phpunit.de/phpunit-4.phar > /usr/local/bin/phpunit 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpunit \
|
||||
5.5:
|
||||
command: |
|
||||
curl -qL https://phar.phpunit.de/phpunit-4.phar > /usr/local/bin/phpunit 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpunit \
|
||||
5.6:
|
||||
command: |
|
||||
curl -qL https://phar.phpunit.de/phpunit-5.phar > /usr/local/bin/phpunit 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpunit \
|
||||
7.0:
|
||||
command: |
|
||||
curl -qL https://phar.phpunit.de/phpunit-6.phar > /usr/local/bin/phpunit 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpunit \
|
||||
all:
|
||||
command: |
|
||||
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 \
|
||||
curl -qL https://phar.phpunit.de/phpunit-7.phar > /usr/local/bin/phpunit 2>/dev/null \
|
||||
&& chmod +x /usr/local/bin/phpunit \
|
||||
photon:
|
||||
disabled: [5.2, 5.3, 5.4]
|
||||
check: photon --version | grep -E 'Installer [.0-9]+'
|
||||
all:
|
||||
command: |
|
||||
COMPOSER_HOME="{{ compose_home }}" composer global require "photoncms/installer" \
|
||||
&& ln -s {{ compose_home }}/vendor/photoncms/installer/photon /usr/local/bin/photon \
|
||||
sass:
|
||||
check: sass --version | grep -E '[.0-9]+'
|
||||
all:
|
||||
command: gem install sass
|
||||
symfony:
|
||||
disabled: [5.3]
|
||||
disabled: [5.2, 5.3]
|
||||
check: symfony --version | grep -E 'version\s*[.0-9]+'
|
||||
all:
|
||||
command: curl https://symfony.com/installer -L -o /usr/local/bin/symfony
|
||||
post: chmod +x /usr/local/bin/symfony
|
||||
wpcli:
|
||||
disabled: [5.2]
|
||||
check: wp --allow-root --version | grep -E '[.0-9]+'
|
||||
5.3:
|
||||
command: curl https://github.com/wp-cli/wp-cli/releases/download/v1.5.1/wp-cli-1.5.1.phar -L -o /usr/local/bin/wp
|
||||
post: chmod +x /usr/local/bin/wp
|
||||
all:
|
||||
command: curl https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -L -o /usr/local/bin/wp
|
||||
post: chmod +x /usr/local/bin/wp
|
||||
@@ -398,6 +632,8 @@ software_available:
|
||||
### Extensions to actually enable
|
||||
###
|
||||
extensions_enabled:
|
||||
# ioncube must be loaded first
|
||||
- ioncube
|
||||
- amqp
|
||||
- apcu
|
||||
- bcmath
|
||||
@@ -457,6 +693,7 @@ extensions_enabled:
|
||||
- readline
|
||||
- recode
|
||||
- redis
|
||||
- rdkafka
|
||||
- session
|
||||
- shmop
|
||||
- simplexml
|
||||
@@ -505,18 +742,28 @@ extensions_enabled:
|
||||
# git_ref: [optional] Tag, branch, commit to checkout
|
||||
# configure: [optional] Add './configure' arguments
|
||||
# command: [optional] Overwrite default command (phpize && ./configure && make && make install)
|
||||
# type: custom
|
||||
# command: [required] Custom command to install and enable a module
|
||||
extensions_available:
|
||||
amqp:
|
||||
disabled: [7.3]
|
||||
7.2:
|
||||
5.2:
|
||||
run_dep: [librabbitmq1]
|
||||
type: pecl
|
||||
run_dep: [librabbitmq4]
|
||||
version: 1.4.0
|
||||
5.3:
|
||||
run_dep: [librabbitmq1]
|
||||
5.4:
|
||||
run_dep: [librabbitmq1]
|
||||
5.5:
|
||||
run_dep: [librabbitmq1]
|
||||
all:
|
||||
type: pecl
|
||||
command: echo "/usr" | pecl install amqp
|
||||
build_dep: [librabbitmq-dev]
|
||||
run_dep: [librabbitmq1]
|
||||
run_dep: [librabbitmq4]
|
||||
apcu:
|
||||
disabled: [5.2]
|
||||
5.3:
|
||||
type: pecl
|
||||
version: 4.0.11
|
||||
@@ -557,6 +804,9 @@ extensions_available:
|
||||
configure: --with-libxml-dir=/usr
|
||||
build_dep: [libxml2-dev]
|
||||
enchant:
|
||||
5.2:
|
||||
type: pecl
|
||||
command: echo "/usr" | pecl install enchant
|
||||
all:
|
||||
type: builtin
|
||||
build_dep: [libenchant-dev]
|
||||
@@ -565,6 +815,9 @@ extensions_available:
|
||||
all:
|
||||
type: builtin
|
||||
fileinfo:
|
||||
5.2:
|
||||
type: pecl
|
||||
build_dep: [libmagic-dev]
|
||||
all:
|
||||
type: builtin
|
||||
filter:
|
||||
@@ -575,42 +828,62 @@ extensions_available:
|
||||
configure: --with-openssl-dir
|
||||
build_dep: [libssl-dev]
|
||||
gd:
|
||||
5.2:
|
||||
type: builtin
|
||||
pre: |
|
||||
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 \
|
||||
configure: --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
|
||||
build_dep: [libpng-dev, libjpeg-dev, libxpm-dev, libvpx-dev, zlib1g-dev, libfreetype6-dev]
|
||||
run_dep: [libpng12-0, libjpeg62-turbo, libxpm4, libvpx1, libfreetype6]
|
||||
5.3:
|
||||
type: builtin
|
||||
pre: 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
|
||||
configure: --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
|
||||
build_dep: [libpng-dev, libjpeg-dev, libxpm-dev, libvpx-dev, zlib1g-dev, libfreetype6-dev]
|
||||
run_dep: [libpng12-0, libjpeg62-turbo, libxpm4, libvpx1, libfreetype6]
|
||||
7.0:
|
||||
type: builtin
|
||||
configure: --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 --enable-gd-native-ttf
|
||||
build_dep: [libpng-dev, libjpeg-dev, libxpm-dev, libvpx-dev, zlib1g-dev, libfreetype6-dev, libwebp-dev]
|
||||
run_dep: [libpng12-0, libjpeg62-turbo, libxpm4, libvpx1, libfreetype6, libwebp-dev]
|
||||
7.1:
|
||||
type: builtin
|
||||
configure: --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 --enable-gd-native-ttf
|
||||
build_dep: [libpng-dev, libjpeg-dev, libxpm-dev, libvpx-dev, zlib1g-dev, libfreetype6-dev, libwebp-dev]
|
||||
run_dep: [libpng12-0, libjpeg62-turbo, libxpm4, libvpx1, libfreetype6, libwebp-dev]
|
||||
7.2:
|
||||
type: builtin
|
||||
configure: --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
|
||||
build_dep: [libpng-dev, libjpeg-dev, libxpm-dev, libvpx-dev, zlib1g-dev, libfreetype6-dev, libwebp-dev]
|
||||
run_dep: [libpng16-16, libjpeg62-turbo, libxpm4, libvpx4, libfreetype6, libwebp6]
|
||||
7.3:
|
||||
type: builtin
|
||||
configure: --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
|
||||
build_dep: [libpng-dev, libjpeg-dev, libxpm-dev, libvpx-dev, zlib1g-dev, libfreetype6-dev, libwebp-dev]
|
||||
run_dep: [libpng16-16, libjpeg62-turbo, libxpm4, libvpx4, libfreetype6, libwebp6]
|
||||
all:
|
||||
5.4:
|
||||
type: builtin
|
||||
pre: ln -s /usr/lib/x86_64-linux-gnu/libXpm.* /usr/lib/
|
||||
configure: --with-gd --with-vpx-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 --enable-gd-native-ttf
|
||||
build_dep: [libpng-dev, libjpeg-dev, libxpm-dev, libvpx-dev, zlib1g-dev, libfreetype6-dev]
|
||||
run_dep: [libpng12-0, libjpeg62-turbo, libxpm4, libvpx1, libfreetype6]
|
||||
5.5:
|
||||
type: builtin
|
||||
pre: ln -s /usr/lib/x86_64-linux-gnu/libXpm.* /usr/lib/
|
||||
configure: --with-gd --with-vpx-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 --enable-gd-native-ttf
|
||||
build_dep: [libpng-dev, libjpeg-dev, libxpm-dev, libvpx-dev, zlib1g-dev, libfreetype6-dev]
|
||||
run_dep: [libpng12-0, libjpeg62-turbo, libxpm4, libvpx1, libfreetype6]
|
||||
5.6:
|
||||
type: builtin
|
||||
pre: ln -s /usr/lib/x86_64-linux-gnu/libXpm.* /usr/lib/
|
||||
configure: --with-gd --with-vpx-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 --enable-gd-native-ttf
|
||||
7.0:
|
||||
type: builtin
|
||||
configure: --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 --enable-gd-native-ttf
|
||||
7.1:
|
||||
type: builtin
|
||||
configure: --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 --enable-gd-native-ttf
|
||||
7.2:
|
||||
type: builtin
|
||||
configure: --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
|
||||
7.3:
|
||||
type: builtin
|
||||
configure: --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
|
||||
all:
|
||||
type: builtin
|
||||
pre: ln -s /usr/lib/x86_64-linux-gnu/libXpm.* /usr/lib/
|
||||
configure: --with-gd --with-vpx-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 --enable-gd-native-ttf
|
||||
build_dep: [libpng-dev, libjpeg-dev, libxpm-dev, libvpx-dev, zlib1g-dev, libfreetype6-dev, libwebp-dev]
|
||||
run_dep: [libpng16-16, libjpeg62-turbo, libxpm4, libvpx4, libfreetype6, libwebp6]
|
||||
gettext:
|
||||
all:
|
||||
type: builtin
|
||||
gmp:
|
||||
disabled: [5.2]
|
||||
all:
|
||||
type: builtin
|
||||
pre: ln /usr/include/x86_64-linux-gnu/gmp.h /usr/include/
|
||||
@@ -625,21 +898,21 @@ extensions_available:
|
||||
all:
|
||||
type: pecl
|
||||
imagick:
|
||||
disabled: [5.2]
|
||||
5.3:
|
||||
type: pecl
|
||||
version: 3.3.0
|
||||
build_dep: [libmagickwand-dev]
|
||||
run_dep: [libmagickwand-6.q16-2]
|
||||
7.2:
|
||||
5.4:
|
||||
type: pecl
|
||||
run_dep: [libmagickwand-6.q16-3]
|
||||
7.3:
|
||||
run_dep: [libmagickwand-6.q16-2]
|
||||
5.5:
|
||||
type: pecl
|
||||
run_dep: [libmagickwand-6.q16-3]
|
||||
run_dep: [libmagickwand-6.q16-2]
|
||||
all:
|
||||
type: pecl
|
||||
build_dep: [libmagickwand-dev]
|
||||
run_dep: [libmagickwand-6.q16-2]
|
||||
run_dep: [libmagickwand-6.q16-3]
|
||||
imap:
|
||||
all:
|
||||
type: builtin
|
||||
@@ -653,16 +926,36 @@ extensions_available:
|
||||
build_dep: [libfbclient2, libib-util, firebird-dev]
|
||||
run_dep: [libfbclient2]
|
||||
intl:
|
||||
7.2:
|
||||
5.2:
|
||||
type: pecl
|
||||
run_dep: [libicu52]
|
||||
5.3:
|
||||
type: builtin
|
||||
run_dep: [libicu57]
|
||||
7.3:
|
||||
run_dep: [libicu52]
|
||||
5.4:
|
||||
type: builtin
|
||||
run_dep: [libicu57]
|
||||
run_dep: [libicu52]
|
||||
5.5:
|
||||
type: builtin
|
||||
run_dep: [libicu52]
|
||||
all:
|
||||
type: builtin
|
||||
build_dep: [libicu-dev]
|
||||
run_dep: [libicu52]
|
||||
run_dep: [libicu57]
|
||||
ioncube:
|
||||
disabled: [7.3]
|
||||
all:
|
||||
type: custom
|
||||
command: |
|
||||
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_{{ php_version }}.so" "${EXTENSION_DIR}/ioncube.so" \
|
||||
&& cd ../ \
|
||||
&& rm -rf ioncube \
|
||||
&& rm -rf ioncube.tar.gz \
|
||||
json:
|
||||
7.0:
|
||||
type: builtin
|
||||
@@ -710,6 +1003,9 @@ extensions_available:
|
||||
type: pecl
|
||||
build_dep: [zlib1g-dev]
|
||||
memcached:
|
||||
5.2:
|
||||
type: pecl
|
||||
version: 2.1.0
|
||||
5.3:
|
||||
type: pecl
|
||||
version: 2.2.0
|
||||
@@ -733,24 +1029,29 @@ extensions_available:
|
||||
run_dep: [libmemcachedutil2]
|
||||
mongo:
|
||||
disabled: [7.0, 7.1, 7.2, 7.3] # Deprecated
|
||||
5.2:
|
||||
type: pecl
|
||||
command: yes | pecl install mongo-1.5.8
|
||||
all:
|
||||
type: pecl
|
||||
command: yes | pecl install mongo
|
||||
build_dep: [libssl-dev, libsasl2-dev]
|
||||
mongodb:
|
||||
disabled: [5.2]
|
||||
5.3:
|
||||
type: pecl
|
||||
version: 0.6.3
|
||||
build_dep: [libssl-dev, libsasl2-dev]
|
||||
5.4:
|
||||
type: pecl
|
||||
version: 1.2.11
|
||||
build_dep: [libssl-dev, libsasl2-dev]
|
||||
all:
|
||||
type: pecl
|
||||
build_dep: [libssl-dev, libsasl2-dev]
|
||||
msgpack:
|
||||
disabled: [7.3]
|
||||
5.2:
|
||||
type: pecl
|
||||
version: 0.5.7
|
||||
5.3:
|
||||
type: pecl
|
||||
version: 0.5.7
|
||||
@@ -767,6 +1068,9 @@ extensions_available:
|
||||
type: pecl
|
||||
mysql:
|
||||
disabled: [7.0, 7.1, 7.2, 7.3] # Deprecated in newer versions
|
||||
5.6:
|
||||
type: builtin
|
||||
run_dep: [libmariadbclient18]
|
||||
all:
|
||||
type: builtin
|
||||
run_dep: [libmysqlclient18]
|
||||
@@ -780,6 +1084,9 @@ extensions_available:
|
||||
odbc:
|
||||
disabled: "{{ php_all_versions }}" # TODO: sqlext.h' not found!
|
||||
opcache:
|
||||
5.2:
|
||||
type: pecl
|
||||
command: pecl install zendopcache
|
||||
5.3:
|
||||
type: pecl
|
||||
command: pecl install zendopcache
|
||||
@@ -835,7 +1142,7 @@ extensions_available:
|
||||
build_dep: [libpq-dev]
|
||||
run_dep: [libpq5]
|
||||
phalcon:
|
||||
disabled: [7.3]
|
||||
disabled: [5.2, 7.3]
|
||||
5.3:
|
||||
type: git
|
||||
git_url: https://github.com/phalcon/cphalcon
|
||||
@@ -859,7 +1166,9 @@ extensions_available:
|
||||
command: cd build && ./install
|
||||
phar:
|
||||
# https://github.com/docker-library/php/issues/618
|
||||
disabled: [7.0] # TODO: Currently disabled due to bug in built
|
||||
disabled: [5.6, 7.0] # TODO: Currently disabled due to bug in built
|
||||
5.2:
|
||||
type: pecl
|
||||
all:
|
||||
type: builtin
|
||||
build_dep: [libssl-dev]
|
||||
@@ -872,7 +1181,7 @@ extensions_available:
|
||||
build_dep: [libpspell-dev]
|
||||
run_dep: [libaspell15]
|
||||
readline:
|
||||
disabled: [5.3, 5.4] # Available by default
|
||||
disabled: [5.2, 5.3, 5.4] # Available by default
|
||||
all:
|
||||
type: builtin
|
||||
build_dep: [libedit-dev, libreadline-dev]
|
||||
@@ -882,8 +1191,17 @@ extensions_available:
|
||||
build_dep: [librecode-dev]
|
||||
run_dep: [librecode0]
|
||||
redis:
|
||||
5.2:
|
||||
type: pecl
|
||||
version: 2.2.7
|
||||
all:
|
||||
type: pecl
|
||||
rdkafka:
|
||||
disabled: [5.2]
|
||||
all:
|
||||
type: pecl
|
||||
build_dep: [librdkafka-dev]
|
||||
run_dep: [librdkafka1]
|
||||
session:
|
||||
all:
|
||||
type: builtin
|
||||
@@ -912,31 +1230,32 @@ extensions_available:
|
||||
all:
|
||||
type: builtin
|
||||
sodium:
|
||||
disabled: [5.3, 5.4, 5.5, 5.6, 7.0, 7.1]
|
||||
7.2:
|
||||
type: builtin
|
||||
build_dep: [libsodium-dev]
|
||||
7.3:
|
||||
disabled: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1]
|
||||
all:
|
||||
type: builtin
|
||||
build_dep: [libsodium-dev]
|
||||
spl:
|
||||
disabled: "{{ php_all_versions }}" # TODO: Did not work
|
||||
swoole:
|
||||
disabled: [5.2]
|
||||
5.3:
|
||||
type: pecl
|
||||
version: 1.9.23
|
||||
run_dep: [libnghttp2-5]
|
||||
5.4:
|
||||
type: pecl
|
||||
version: 1.9.23
|
||||
run_dep: [libnghttp2-5]
|
||||
5.5:
|
||||
type: pecl
|
||||
version: 1.9.23
|
||||
run_dep: [libnghttp2-5]
|
||||
5.6:
|
||||
type: pecl
|
||||
version: 1.9.23
|
||||
7.2:
|
||||
7.0:
|
||||
type: pecl
|
||||
run_dep: [libnghttp2-14]
|
||||
version: 2.2.0
|
||||
7.3:
|
||||
type: git
|
||||
git_url: https://github.com/swoole/swoole-src
|
||||
@@ -963,7 +1282,7 @@ extensions_available:
|
||||
--enable-mysqlnd \
|
||||
--enable-coroutine \
|
||||
--enable-picohttpparser \
|
||||
--enable-timewheel \
|
||||
#`--enable-timewheel` \
|
||||
#`--enable-hugepage` \
|
||||
#`--enable-asan` \
|
||||
#`--with-phpx-dir=` \
|
||||
@@ -979,7 +1298,7 @@ extensions_available:
|
||||
all:
|
||||
type: pecl
|
||||
build_dep: [libnghttp2-dev, libssl-dev]
|
||||
run_dep: [libnghttp2-5]
|
||||
run_dep: [libnghttp2-14]
|
||||
sysvmsg:
|
||||
all:
|
||||
type: builtin
|
||||
@@ -990,16 +1309,22 @@ extensions_available:
|
||||
all:
|
||||
type: builtin
|
||||
tidy:
|
||||
7.2:
|
||||
5.2:
|
||||
type: builtin
|
||||
run_dep: [libtidy5]
|
||||
7.3:
|
||||
run_dep: [libtidy-0.99-0]
|
||||
5.3:
|
||||
type: builtin
|
||||
run_dep: [libtidy5]
|
||||
run_dep: [libtidy-0.99-0]
|
||||
5.4:
|
||||
type: builtin
|
||||
run_dep: [libtidy-0.99-0]
|
||||
5.5:
|
||||
type: builtin
|
||||
run_dep: [libtidy-0.99-0]
|
||||
all:
|
||||
type: builtin
|
||||
build_dep: [libtidy-dev]
|
||||
run_dep: [libtidy-0.99-0]
|
||||
run_dep: [libtidy5]
|
||||
tokenizer:
|
||||
all:
|
||||
type: builtin
|
||||
@@ -1029,6 +1354,9 @@ extensions_available:
|
||||
build_dep: [libxml2-dev]
|
||||
xdebug:
|
||||
disabled: [7.3]
|
||||
5.2:
|
||||
type: pecl
|
||||
version: 2.2.7
|
||||
5.3:
|
||||
type: pecl
|
||||
version: 2.2.7
|
||||
@@ -1070,6 +1398,11 @@ extensions_available:
|
||||
build_dep: [libxslt-dev]
|
||||
run_dep: [libxslt1.1]
|
||||
zip:
|
||||
5.2:
|
||||
type: builtin
|
||||
configure: --with-zlib-dir=/usr --with-pcre-dir=/usr
|
||||
build_dep: [zlib1g-dev]
|
||||
run_dep: []
|
||||
5.3:
|
||||
type: builtin
|
||||
configure: --with-zlib-dir=/usr --with-pcre-dir=/usr
|
||||
@@ -1085,16 +1418,8 @@ extensions_available:
|
||||
configure: --with-zlib-dir=/usr --with-pcre-dir=/usr
|
||||
build_dep: [zlib1g-dev]
|
||||
run_dep: []
|
||||
7.2:
|
||||
type: builtin
|
||||
configure: --with-zlib-dir=/usr --with-pcre-dir=/usr --with-libzip
|
||||
run_dep: [libzip4]
|
||||
7.3:
|
||||
type: builtin
|
||||
configure: --with-zlib-dir=/usr --with-pcre-dir=/usr --with-libzip
|
||||
run_dep: [libzip4]
|
||||
all:
|
||||
type: builtin
|
||||
configure: --with-zlib-dir=/usr --with-pcre-dir=/usr --with-libzip
|
||||
build_dep: [zlib1g-dev, libzip-dev]
|
||||
run_dep: [libzip2]
|
||||
run_dep: [libzip4]
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
[php]
|
||||
php-5.2 php_version=5.2 ansible_connection=local
|
||||
php-5.3 php_version=5.3 ansible_connection=local
|
||||
php-5.4 php_version=5.4 ansible_connection=local
|
||||
php-5.5 php_version=5.5 ansible_connection=local
|
||||
|
||||
@@ -1,10 +1,19 @@
|
||||
---
|
||||
|
||||
- name: render template
|
||||
- name: generate Dockerfiles
|
||||
template:
|
||||
src: "{{ item.src }}"
|
||||
src: "{{ item.src }}"
|
||||
dest: "{{ item.dst }}"
|
||||
force: True
|
||||
mode: 0644
|
||||
mode: 0644
|
||||
with_items:
|
||||
- "{{ template_files }}"
|
||||
- "{{ template_dockerfiles }}"
|
||||
|
||||
- name: generate php configuration files
|
||||
template:
|
||||
src: "{{ item.src }}"
|
||||
dest: "{{ item.dst }}"
|
||||
force: True
|
||||
mode: 0644
|
||||
with_items:
|
||||
- "{{ template_configurations }}"
|
||||
|
||||
@@ -14,6 +14,7 @@ CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
###
|
||||
print_usage() {
|
||||
echo "Usage: gen-readme.sh"
|
||||
echo " gen-readme.sh 5.2"
|
||||
echo " gen-readme.sh 5.3"
|
||||
echo " gen-readme.sh 5.4"
|
||||
echo " gen-readme.sh 5.5"
|
||||
@@ -63,6 +64,7 @@ update_readme() {
|
||||
###
|
||||
if [ "${#}" -eq "0" ]; then
|
||||
# Update PHP modules for all versions at once
|
||||
update_readme "5.2"
|
||||
update_readme "5.3"
|
||||
update_readme "5.4"
|
||||
update_readme "5.5"
|
||||
@@ -77,8 +79,9 @@ elif [ "${#}" -gt "1" ]; then
|
||||
print_usage
|
||||
exit 1
|
||||
else
|
||||
if [ "${1}" != "5.3" ] \
|
||||
if [ "${1}" != "5.4" ] \
|
||||
if [ "${1}" != "5.2" ] \
|
||||
&& [ "${1}" != "5.3" ] \
|
||||
&& [ "${1}" != "5.4" ] \
|
||||
&& [ "${1}" != "5.5" ] \
|
||||
&& [ "${1}" != "5.6" ] \
|
||||
&& [ "${1}" != "7.0" ] \
|
||||
|
||||
@@ -71,7 +71,13 @@ run "sleep 10"
|
||||
###
|
||||
### Check correct PHP-FPM user
|
||||
###
|
||||
if ! docker_exec "${did}" "ps auxw | grep 'php-fpm: pool' | grep -v grep | awk '{ print \$1 }' | head -1 | grep devilbox"; then
|
||||
|
||||
# On pm = ondemand, there will be no child process, so we need to create some traffic
|
||||
# in order to have child proccesses spawn
|
||||
for i in $(seq 1 10); do
|
||||
curl http://127.0.0.1:${WWW_PORT}/index.php?${i} >/dev/null 2>&1 &
|
||||
done
|
||||
if ! docker_exec "${did}" "ps auxw | grep -E '(php-fpm: pool|php-cgi)' | grep -v grep | awk '{ print \$1 }' | tail -1 | grep devilbox"; then
|
||||
docker_exec "${did}" "ps auxw"
|
||||
|
||||
# Shutdown
|
||||
@@ -82,17 +88,7 @@ if ! docker_exec "${did}" "ps auxw | grep 'php-fpm: pool' | grep -v grep | awk '
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
if ! docker_exec "${did}" "ps auxw | grep 'php-fpm: pool' | grep -v grep | awk '{ print \$1 }' | tail -1 | grep devilbox"; then
|
||||
docker_exec "${did}" "ps auxw"
|
||||
|
||||
# Shutdown
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${DOC_ROOT_HOST}"
|
||||
rm -rf "${CONFIG_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
###
|
||||
|
||||
172
tests/prod/02-test-env-docker_logs-stdout.sh
Executable file
172
tests/prod/02-test-env-docker_logs-stdout.sh
Executable file
@@ -0,0 +1,172 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
set -u
|
||||
set -o pipefail
|
||||
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
|
||||
|
||||
|
||||
############################################################
|
||||
# Tests
|
||||
############################################################
|
||||
|
||||
###
|
||||
### Docker logs (STDOUT)
|
||||
###
|
||||
WWW_PORT="23254"
|
||||
WWW_DIR_HOST="$( mktemp -d )"
|
||||
WWW_DIR_CONT="/var/www/default"
|
||||
CFG_DIR_HOST="$( mktemp -d )"
|
||||
CFG_DIR_CONT="/etc/nginx/conf.d"
|
||||
LOG_DIR_HOST="$( mktemp --directory )"
|
||||
CONTAINER="nginx:stable"
|
||||
|
||||
# Create www files
|
||||
echo "<?php echo 'ok';" > "${WWW_DIR_HOST}/ok.php"
|
||||
echo "<?php syntax error:" > "${WWW_DIR_HOST}/fail.php"
|
||||
|
||||
# Fix mount permissions
|
||||
chmod 0777 -R "${LOG_DIR_HOST}"
|
||||
chmod 0777 -R "${CFG_DIR_HOST}"
|
||||
chmod 0777 -R "${WWW_DIR_HOST}"
|
||||
|
||||
|
||||
###
|
||||
### Start container
|
||||
###
|
||||
|
||||
# Start PHP-FPM
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -e DOCKER_LOGS=1 -v ${WWW_DIR_HOST}:${WWW_DIR_CONT} -v ${LOG_DIR_HOST}:/var/log/php" )"
|
||||
name="$( docker_name "${did}" )"
|
||||
|
||||
# Nginx.conf
|
||||
{
|
||||
echo "server {"
|
||||
echo " server_name _;"
|
||||
echo " listen 80;"
|
||||
echo " root ${WWW_DIR_CONT};"
|
||||
echo " index index.php;"
|
||||
echo " location ~* \.php\$ {"
|
||||
echo " fastcgi_index index.php;"
|
||||
echo " fastcgi_pass ${name}:9000;"
|
||||
echo " include fastcgi_params;"
|
||||
echo " fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;"
|
||||
echo " fastcgi_param SCRIPT_NAME \$fastcgi_script_name;"
|
||||
echo " }"
|
||||
echo "}"
|
||||
} > "${CFG_DIR_HOST}/php.conf"
|
||||
|
||||
|
||||
# Start Nginx
|
||||
ndid="$( docker_run "${CONTAINER}" "-v ${WWW_DIR_HOST}:${WWW_DIR_CONT} -v ${CFG_DIR_HOST}:${CFG_DIR_CONT} -p ${WWW_PORT}:80 --link ${name}" )"
|
||||
|
||||
# Wait for both containers to be up and running
|
||||
run "sleep 10"
|
||||
|
||||
|
||||
###
|
||||
### Fire positive and error generating request
|
||||
###
|
||||
run "curl http://localhost:${WWW_PORT}/ok.php"
|
||||
run "curl http://localhost:${WWW_PORT}/fail.php"
|
||||
|
||||
|
||||
###
|
||||
### Run tests
|
||||
###
|
||||
if ! run "docker logs ${did} 2>&1 | grep -q 'DOCKER_LOGS'"; then
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -f "${LOG_DIR_HOST}/php-fpm.access" ]; then
|
||||
echo "Access log should not exist: ${LOG_DIR_HOST}/php-fpm.access"
|
||||
ls -lap ${LOG_DIR_HOST}/
|
||||
cat "${LOG_DIR_HOST}/php-fpm.access"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -f "${LOG_DIR_HOST}/php-fpm.error" ]; then
|
||||
echo "Error log should not exist: ${LOG_DIR_HOST}/php-fpm.error"
|
||||
ls -lap ${LOG_DIR_HOST}/
|
||||
cat "${LOG_DIR_HOST}/php-fpm.error"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
###
|
||||
### PHP 5.2 still does not show any errors
|
||||
###
|
||||
if [ "${VERSION}" != "5.2" ]; then
|
||||
if ! run "docker logs ${did} 2>&1 | grep -q 'GET /ok.php'"; then
|
||||
echo "Error no access log string for 'GET /ok.php' found in stderr"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
if ! run "docker logs ${did} 2>&1 | grep -q 'GET /fail.php'"; then
|
||||
echo "Error no access log string for 'GET /fail.php' found in stderr"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
if ! run "docker logs ${did} 2>&1 | grep -q '/var/www/default/fail.php'"; then
|
||||
echo "Error no error message found in stderr"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
###
|
||||
### Shutdown
|
||||
###
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}"
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
@@ -1,117 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
set -u
|
||||
set -o pipefail
|
||||
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
|
||||
|
||||
|
||||
############################################################
|
||||
# Tests
|
||||
############################################################
|
||||
|
||||
###
|
||||
### Docker logs
|
||||
###
|
||||
MOUNTPOINT="$( mktemp --directory )"
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -e DOCKER_LOGS=1 -v ${MOUNTPOINT}:/var/log/php" )"
|
||||
run "sleep 10"
|
||||
|
||||
if ! run "docker logs ${did} 2>&1 | grep -q 'DOCKER_LOGS'"; then
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -f "${MOUNTPOINT}/php-fpm.access" ]; then
|
||||
echo "Access log should not exist: ${MOUNTPOINT}/php-fpm.access"
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
if [ -f "${MOUNTPOINT}/php-fpm.error" ]; then
|
||||
echo "Error log should not exist: ${MOUNTPOINT}/php-fpm.error"
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
run "ls -lap ${MOUNTPOINT}/"
|
||||
docker_stop "${did}"
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
|
||||
|
||||
###
|
||||
### Log to file
|
||||
###
|
||||
MOUNTPOINT="$( mktemp --directory )"
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -e DOCKER_LOGS=0 -v ${MOUNTPOINT}:/var/log/php" )"
|
||||
run "sleep 10"
|
||||
|
||||
if ! run "docker logs ${did} 2>&1 | grep -q 'DOCKER_LOGS'"; then
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -f "${MOUNTPOINT}/php-fpm.access" ]; then
|
||||
echo "Access log does not exist: ${MOUNTPOINT}/php-fpm.access"
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -r "${MOUNTPOINT}/php-fpm.access" ]; then
|
||||
echo "Access log is not readable"
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -f "${MOUNTPOINT}/php-fpm.error" ]; then
|
||||
echo "Error log does not exist: ${MOUNTPOINT}/php-fpm.error"
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -r "${MOUNTPOINT}/php-fpm.error" ]; then
|
||||
echo "Error log is not readable"
|
||||
ls -lap ${MOUNTPOINT}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
run "ls -lap ${MOUNTPOINT}/"
|
||||
run "cat ${MOUNTPOINT}/*"
|
||||
docker_stop "${did}"
|
||||
rm -rf "${MOUNTPOINT}"
|
||||
244
tests/prod/03-test-env-docker_logs-file.sh
Executable file
244
tests/prod/03-test-env-docker_logs-file.sh
Executable file
@@ -0,0 +1,244 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
set -u
|
||||
set -o pipefail
|
||||
|
||||
CWD="$(cd -P -- "$(dirname -- "$0")" && pwd -P)"
|
||||
|
||||
IMAGE="${1}"
|
||||
VERSION="${2}"
|
||||
FLAVOUR="${3}"
|
||||
|
||||
# shellcheck disable=SC1090
|
||||
. "${CWD}/../.lib.sh"
|
||||
|
||||
|
||||
|
||||
############################################################
|
||||
# Tests
|
||||
############################################################
|
||||
|
||||
###
|
||||
### Docker logs (STDOUT)
|
||||
###
|
||||
WWW_PORT="23254"
|
||||
WWW_DIR_HOST="$( mktemp -d )"
|
||||
WWW_DIR_CONT="/var/www/default"
|
||||
CFG_DIR_HOST="$( mktemp -d )"
|
||||
CFG_DIR_CONT="/etc/nginx/conf.d"
|
||||
LOG_DIR_HOST="$( mktemp --directory )"
|
||||
CONTAINER="nginx:stable"
|
||||
|
||||
# Create www files
|
||||
echo "<?php echo 'ok';" > "${WWW_DIR_HOST}/ok.php"
|
||||
echo "<?php syntax error:" > "${WWW_DIR_HOST}/fail.php"
|
||||
|
||||
# Fix mount permissions
|
||||
chmod 0777 -R "${LOG_DIR_HOST}"
|
||||
chmod 0777 -R "${CFG_DIR_HOST}"
|
||||
chmod 0777 -R "${WWW_DIR_HOST}"
|
||||
|
||||
|
||||
###
|
||||
### Start container
|
||||
###
|
||||
|
||||
# Start PHP-FPM
|
||||
did="$( docker_run "${IMAGE}:${VERSION}-${FLAVOUR}" "-e DEBUG_ENTRYPOINT=2 -e NEW_UID=$(id -u) -e NEW_GID=$(id -g) -e DOCKER_LOGS=0 -v ${WWW_DIR_HOST}:${WWW_DIR_CONT} -v ${LOG_DIR_HOST}:/var/log/php" )"
|
||||
name="$( docker_name "${did}" )"
|
||||
|
||||
# Nginx.conf
|
||||
{
|
||||
echo "server {"
|
||||
echo " server_name _;"
|
||||
echo " listen 80;"
|
||||
echo " root ${WWW_DIR_CONT};"
|
||||
echo " index index.php;"
|
||||
echo " location ~* \.php\$ {"
|
||||
echo " fastcgi_index index.php;"
|
||||
echo " fastcgi_pass ${name}:9000;"
|
||||
echo " include fastcgi_params;"
|
||||
echo " fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;"
|
||||
echo " fastcgi_param SCRIPT_NAME \$fastcgi_script_name;"
|
||||
echo " }"
|
||||
echo "}"
|
||||
} > "${CFG_DIR_HOST}/php.conf"
|
||||
|
||||
|
||||
# Start Nginx
|
||||
ndid="$( docker_run "${CONTAINER}" "-v ${WWW_DIR_HOST}:${WWW_DIR_CONT} -v ${CFG_DIR_HOST}:${CFG_DIR_CONT} -p ${WWW_PORT}:80 --link ${name}" )"
|
||||
|
||||
# Wait for both containers to be up and running
|
||||
run "sleep 10"
|
||||
|
||||
|
||||
###
|
||||
### Fire positive and error generating request
|
||||
###
|
||||
run "curl http://localhost:${WWW_PORT}/ok.php"
|
||||
run "curl http://localhost:${WWW_PORT}/fail.php"
|
||||
|
||||
|
||||
###
|
||||
### Run tests
|
||||
###
|
||||
if ! run "docker logs ${did} 2>&1 | grep -q 'DOCKER_LOGS'"; then
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -f "${LOG_DIR_HOST}/php-fpm.access" ]; then
|
||||
echo "Access log does not exist: ${LOG_DIR_HOST}/php-fpm.access"
|
||||
ls -lap ${LOG_DIR_HOST}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -r "${LOG_DIR_HOST}/php-fpm.access" ]; then
|
||||
echo "Access log is not readable"
|
||||
ls -lap ${LOG_DIR_HOST}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -f "${LOG_DIR_HOST}/php-fpm.error" ]; then
|
||||
echo "Error log does not exist: ${LOG_DIR_HOST}/php-fpm.error"
|
||||
ls -lap ${LOG_DIR_HOST}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -r "${LOG_DIR_HOST}/php-fpm.error" ]; then
|
||||
echo "Error log is not readable"
|
||||
ls -lap ${LOG_DIR_HOST}/
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Ensure no access/error goes to stderr
|
||||
if run "docker logs ${did} 2>&1 | grep -q 'GET /ok.php'"; then
|
||||
echo "Error access log string for 'GET /ok.php' found in stderr, but shold go to file"
|
||||
run "cat ${LOG_DIR_HOST}/php-fpm.access"
|
||||
run "cat ${LOG_DIR_HOST}/php-fpm.error"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
if run "docker logs ${did} 2>&1 | grep -q 'GET /fail.php'"; then
|
||||
echo "Error access log string for 'GET /fail.php' found in stderr, but should go to file"
|
||||
run "cat ${LOG_DIR_HOST}/php-fpm.access"
|
||||
run "cat ${LOG_DIR_HOST}/php-fpm.error"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
if run "docker logs ${did} 2>&1 | grep -q '/var/www/default/fail.php'"; then
|
||||
echo "Error error message found in stderr, but should go to file"
|
||||
run "cat ${LOG_DIR_HOST}/php-fpm.access"
|
||||
run "cat ${LOG_DIR_HOST}/php-fpm.error"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# PHP-FPM 5.2 does not show access logs
|
||||
if [ "${VERSION}" != "5.2" ]; then
|
||||
# Test access and error file for correct content
|
||||
if ! run "grep -q 'GET /ok.php' ${LOG_DIR_HOST}/php-fpm.access"; then
|
||||
echo "Error no access log string for 'GET /ok.php' found in: ${LOG_DIR_HOST}/php-fpm.access"
|
||||
run "cat ${LOG_DIR_HOST}/php-fpm.access"
|
||||
run "cat ${LOG_DIR_HOST}/php-fpm.error"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
if ! run "grep -q 'GET /fail.php' ${LOG_DIR_HOST}/php-fpm.access"; then
|
||||
echo "Error no access log string for 'GET /fail.php' found in: ${LOG_DIR_HOST}/php-fpm.access"
|
||||
run "cat ${LOG_DIR_HOST}/php-fpm.access"
|
||||
run "cat ${LOG_DIR_HOST}/php-fpm.error"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
if ! run "grep -q '/var/www/default/fail.php' ${LOG_DIR_HOST}/php-fpm.error"; then
|
||||
echo "Error no error message found in: ${LOG_DIR_HOST}/php-fpm.error"
|
||||
run "cat ${LOG_DIR_HOST}/php-fpm.access"
|
||||
run "cat ${LOG_DIR_HOST}/php-fpm.error"
|
||||
docker_logs "${did}" || true
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}" || true
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
echo "Failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
###
|
||||
### Shutdown
|
||||
###
|
||||
docker_logs "${did}" || true
|
||||
run "ls -lap ${LOG_DIR_HOST}/"
|
||||
run "cat ${LOG_DIR_HOST}/php-fpm.access"
|
||||
run "cat ${LOG_DIR_HOST}/php-fpm.error"
|
||||
docker_stop "${ndid}" || true
|
||||
docker_stop "${did}"
|
||||
rm -rf "${LOG_DIR_HOST}"
|
||||
rm -rf "${CFG_DIR_HOST}"
|
||||
rm -rf "${WWW_DIR_HOST}"
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user