From 48d9fc2840f5057a5fc578c77b27ad17b65e5b35 Mon Sep 17 00:00:00 2001 From: a-sansara Date: Fri, 12 Aug 2016 04:06:57 +0200 Subject: [PATCH] manage apache-fpm + fix alpine-symfony --- DOCKER.md | 39 +++++--- README.md | 2 + pluie/alpine-apache-fpm/.gitignore | 1 + pluie/alpine-apache-fpm/Dockerfile | 22 +++++ pluie/alpine-apache-fpm/README.md | 89 ++++++++++++++++++ pluie/alpine-apache-fpm/build | 22 +++++ pluie/alpine-apache-fpm/files.tar | Bin 0 -> 10240 bytes .../alpine-apache-fpm/install.d/10-apache.sh | 8 ++ .../install.d/50-fix-apache.sh | 50 ++++++++++ pluie/alpine-apache-fpm/main.sh | 12 +++ .../alpine-apache-fpm/pre-init.d/10-apache.sh | 8 ++ .../alpine-apache-fpm/pre-init.d/10-vhost.sh | 27 ++++++ pluie/alpine-apache/Dockerfile | 2 +- pluie/alpine-apache/README.md | 3 +- pluie/alpine-apache/files.tar | Bin 10240 -> 10240 bytes pluie/alpine-apache/install.d/10-apache.sh | 4 +- .../alpine-apache/install.d/50-fix-apache.sh | 3 + pluie/alpine-apache/pre-init.d/10-vhost.sh | 4 + pluie/alpine-mysql/README.md | 2 + pluie/alpine-symfony/Dockerfile | 2 +- pluie/alpine-symfony/README.md | 2 + pluie/alpine-symfony/files.tar | Bin 10240 -> 10240 bytes pluie/alpine-symfony/pre-init.d/10-symfony.sh | 1 + pluie/alpine/README.md | 2 + 24 files changed, 289 insertions(+), 16 deletions(-) create mode 100644 pluie/alpine-apache-fpm/.gitignore create mode 100644 pluie/alpine-apache-fpm/Dockerfile create mode 100644 pluie/alpine-apache-fpm/README.md create mode 100755 pluie/alpine-apache-fpm/build create mode 100644 pluie/alpine-apache-fpm/files.tar create mode 100755 pluie/alpine-apache-fpm/install.d/10-apache.sh create mode 100755 pluie/alpine-apache-fpm/install.d/50-fix-apache.sh create mode 100755 pluie/alpine-apache-fpm/main.sh create mode 100755 pluie/alpine-apache-fpm/pre-init.d/10-apache.sh create mode 100755 pluie/alpine-apache-fpm/pre-init.d/10-vhost.sh diff --git a/DOCKER.md b/DOCKER.md index 2403ad3..9ff55d7 100644 --- a/DOCKER.md +++ b/DOCKER.md @@ -3,6 +3,7 @@ - [index][1] - [pluie/alpine][2] ( < 10 MB ) Alpine/3.4 - [pluie/alpine-apache][3] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24 + - [pluie/alpine-apache-fpm][7] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24 Fpm - [pluie/alpine-symfony][6] ( ~ 81 MB ) - [pluie/alpine-mysql][4] ( ~172 MB ) Mysql/5.5.47 ( MariaDB ) - [docker tips][5] @@ -31,6 +32,8 @@ docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end} 172.22.0.4 pma.docker 172.22.0.5 bo-payment.docker 172.22.0.6 wordpress.docker +172.22.0.7 symfony.docker +172.22.0.8 afpm.docker # < ``` @@ -74,6 +77,7 @@ docker stats container [gogs.docker] (http://gogs.docker) [bo-payment.docker] (http://bo-payment.docker) [wordpress.docker] (http://wordpress.docker) +[symfony.docker] (http://symfony.docker) #### Mysql ``` @@ -117,17 +121,6 @@ docker run --name apache --restart=always \ -d pluie/alpine-apache ``` -### Symfony -``` -cd /home/dev/docker -docker run --name symfony --restart=always \ ---net home0 -h symfony.docker --ip 172.22.0.7 --link=mysql:db \ --e HTTP_SERVER_NAME=symfony \ --e SYMFONY_VERSION=2.8 \ --v $(pwd)/repo/myapp:/app \ --d pluie/alpine-symfony -``` - #### Wordpress ``` cd /home/dev/docker @@ -137,10 +130,34 @@ docker run --name wordpress --restart=always \ -v $(pwd)/repo/blog:/app \ -e HTTP_SERVER_NAME=wordpress.docker \ -d pluie/alpine-apache +``` + +### Symfony +``` +cd /home/dev/docker +docker run --name symfony --restart=always \ +--net home0 -h symfony.docker --ip 172.22.0.7 --link=mysql:db \ +-e HTTP_SERVER_NAME=symfony \ +-e SYMFONY_VERSION=2.8 \ +-v $(pwd)/repo/myapp:/app \ +-d pluie/alpine-symfony +``` + +#### ApacheFpm +``` +cd /home/dev/docker + +docker run --name afpm --restart=always \ +--net home0 -h bo-payment.docker --ip 172.22.0.8 --link mysql:db \ +-v $(pwd)/repo/afpm:/app \ +-e HTTP_SERVER_NAME=afpm.docker \ +-d pluie/alpine-apache-fpm ``` [1]: https://github.com/pluie-org/docker-images [2]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine [3]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-mysql [4]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache + [7]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache-fpm [5]: https://github.com/pluie-org/docker-images/blob/master/DOCKER.md + [6]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-symfony diff --git a/README.md b/README.md index f53f356..a4bebdc 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,7 @@ various based images for Docker - [index][1] - [pluie/alpine][2] ( < 10 MB ) Alpine/3.4 - [pluie/alpine-apache][3] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24 + - [pluie/alpine-apache-fpm][7] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24 Fpm - [pluie/alpine-symfony][6] ( ~ 81 MB ) - [pluie/alpine-mysql][4] ( ~172 MB ) Mysql/5.5.47 ( MariaDB ) - [docker tips][5] @@ -75,5 +76,6 @@ you can keep same __build__ script in any project [2]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine [3]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-mysql [4]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache + [7]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache-fpm [5]: https://github.com/pluie-org/docker-images/blob/master/DOCKER.md [6]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-symfony diff --git a/pluie/alpine-apache-fpm/.gitignore b/pluie/alpine-apache-fpm/.gitignore new file mode 100644 index 0000000..ee50cfe --- /dev/null +++ b/pluie/alpine-apache-fpm/.gitignore @@ -0,0 +1 @@ +files.tar diff --git a/pluie/alpine-apache-fpm/Dockerfile b/pluie/alpine-apache-fpm/Dockerfile new file mode 100644 index 0000000..8f17ff5 --- /dev/null +++ b/pluie/alpine-apache-fpm/Dockerfile @@ -0,0 +1,22 @@ +# @app pluie/alpine-apache +# @author a-Sansara https://git.pluie.org/pluie/docker-images + +FROM pluie/alpine + +MAINTAINER a-Sansara https://github.com/a-sansara + +ADD files.tar /scripts + +ENV SHENV_NAME=ApacheFpm \ + SHENV_COLOR=67 \ + HTTP_SERVER_NAME=fpm.docker \ + WWW_DIR=www \ + WWW_INDEX=index \ + FIX_OWNERSHIP=1 \ + TZ=Europe/Paris + +EXPOSE 80 + +VOLUME /etc/php5/fpm.d/ + +RUN bash /scripts/install.sh diff --git a/pluie/alpine-apache-fpm/README.md b/pluie/alpine-apache-fpm/README.md new file mode 100644 index 0000000..066a825 --- /dev/null +++ b/pluie/alpine-apache-fpm/README.md @@ -0,0 +1,89 @@ +# pluie/alpine-apache + +- [index][1] +- [pluie/alpine][2] ( < 10 MB ) Alpine/3.4 + - [pluie/alpine-apache][3] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24 + - [pluie/alpine-apache-fpm][7] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24 Fpm + - [pluie/alpine-symfony][6] ( ~ 81 MB ) + - [pluie/alpine-mysql][4] ( ~172 MB ) Mysql/5.5.47 ( MariaDB ) +- [docker tips][5] + +Extend pluie/alpine with __apache 2.4.23__ and __php 5.6.24__ + +- error log are attached to stdout +- no need port redirection +- you can use env var at container creation : __HTTP_SERVER_NAME__ (default : docker-site.dev ortherwise edit app/vhost later) +- you can still use ever your local http & sql server while your container(s) are running + + +## Image Size + +- image ~ 50 MB + +## ENV variables + +``` + HTTP_SERVER_NAME=apache.docker # apache ServerName + WWW_DIR=www # DocumentRoot relative to volume + WWW_INDEX=index.php # DirectoryIndex + FIX_OWNERSHIP=1 # +``` + +### Inherit ENV variables + +``` + SHENV_CTX=LOCAL # LOCAL|INT|PROD change context bg color + SHENV_NAME=Apache # container name + SHENV_COLOR=67 # ANSI EXTENDED COLOR CODE + TZ=Europe/Paris # TIMEZONE +``` + +## Image Volumes + +__/app__ directory is a docker volume bind to your app project (silex/symfony etc) + +__/app/$WWW_DIR__ is the documentRoot. +put only your entry point and static files to the documentRoot directory, no your app sources +(__/app__ directory is design for this). + +__/app/vhost__ is your app vhost configuration file (with a serverName directive). +by default it use the apache rewrite module to redirect all uri to entry point $WWW_INDEX + +``` +/app/ # your application directory + | + |---- $WWW_DIR/ # documentRoot + | + |---- vhost # apache app vhost +``` + + +## Image Usage + +chdir to your project directory +``` +$ docker run --name apache -it --link=mysql:db1 -v $(pwd):/app pluie/alpine-apache +``` +or +``` +$ docker run --name apache -it --link=mysql:db1 -e HTTP_SERVER_NAME=yourServerName -v $(pwd):/app pluie/alpine-apache +``` + + +## Controling http server + +``` +$ docker exec -it apache "httpd -k restart" +``` +for more commands : +``` +$ docker exec -it apache "httpd -h" +``` + + [1]: https://github.com/pluie-org/docker-images + [2]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine + [3]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-mysql + [4]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache + [7]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache-fpm + [5]: https://github.com/pluie-org/docker-images/blob/master/DOCKER.md + [6]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-symfony diff --git a/pluie/alpine-apache-fpm/build b/pluie/alpine-apache-fpm/build new file mode 100755 index 0000000..09b3da8 --- /dev/null +++ b/pluie/alpine-apache-fpm/build @@ -0,0 +1,22 @@ +#!/bin/bash +# @app pluie/alpine-apache +# @author a-Sansara https://git.pluie.org/pluie/docker-images + + Ctitle="\033[1;38;5;15;1;48;5;30m" + Citem="\033[1;38;5;36m" + Coff="\033[m" + DOCKDIR=$(dirname "$(readlink -f ${BASH_SOURCE[0]})") +DOCKBUILD=$(basename $DOCKDIR) + DOCKREPO=$(basename $(dirname $DOCKDIR)) + DOCKTAG=${1:-"latest"} + TMPPWD=$(pwd) + indent=" " +cd $DOCKDIR +echo -e "\n ${Ctitle} Preparing files : ${Coff}${Citem}\n" + +tar -cvf files.tar *.sh pre-init.d/ install.d/ | sed "s/^/${indent}↠ /" + +echo -e "\n ${Ctitle} Proceed Dockerfile build : ${Coff}\n +" +docker build --force-rm -t ${DOCKREPO}/${DOCKBUILD}:${DOCKTAG} . | sed "s/^/${indent}/" +cd $TMPPWD diff --git a/pluie/alpine-apache-fpm/files.tar b/pluie/alpine-apache-fpm/files.tar new file mode 100644 index 0000000000000000000000000000000000000000..eaf0b80dd8ab0108aa98342a70ce5becc6f21f8e GIT binary patch literal 10240 zcmeGhYjfK+(x3S&Hk2-E-6JVcmVM{io_cC|teN;x$xS+q8x2fCBF-ei5Rl*g@3#O* zJ#6`$cI4c2B4!+dyNd;|yV#c!!ctd6E3f&~@!8mDt>CM%(W+0s6{^1Gw^kbdMyuIa z_x*LmH~jUr^%bbU=B7&CBOyr+utFR`QbBT3A|Ab8!apMayL?vOc;_tj&WVVu3j9Q} z4D^%5BSt+EXDp=-$w&}UjUUN~qqu-LJtHoNq|C&o=M9;3^(>d?L(j|)d2m5FN%NvPYA25qDXOJcE){=z9;Ov8UNpdgdL(iPf_h_E;+(n4>cTwH~ z_L=3>Q8IT!Zvouqvru>Zf8BpXPwsyU{Y0bLY;LSTYd*WhLcj6*Kc)Xh-MNgokP8n7 zFX+Ef`hS0|*=%em|KIY_43_?Xv6eoU8~Xp!MSh(azy|OU-hgupHhSL7(E{tn2NK6H%twWr=q60`I|j2W6OX*TV2h-m{H8+9s#db(zfpLrU>KkmBiUw&=(PW$_vcWtGp z2YBNQ<}vH4J${-x0(|_XxBJg`e~gK@yz(rCRK4->cdRXM%4l{lhv}q2JPN5f8i|eI zwH5jn+MG3D-)Q_t|8G*EMF)Tv{QqqJuj7BK*<9xTbN%(Af&WkcU)}Hg)<6Dm)b92U zIwu$dRAT=T?8k72euhSgb;4O!IU6}5ewBjLg$CN(rm^N(a&^5WAE6^(=Kso;Sc>&; z9KUAzuj>6T%m1U7{f4Ul z*6XVNTlRnEs%)XauiF0^jM6|Qlt6qzrAa@(`~FTRaxo7u8KWsVkLh;xuCeLVY7bKw zfQ-lpF-^pHR0iX|jcx?F0Z#{yCJ1aYZP#iuOmYo7s~G5{7^#i}jHykk{%lR65?D=b zSIr)6*j7Pls%%jt>M_ffOBfh{S=cPAU>Ju=6b&MdQO~!>5J5w57}%mxy;JNS-f3Y@gW5!-2?)Va(O5m%$D>zcCWxkXe8*5c1RI@H_=)tmL44(pYO&GIt5C5){Sn+oK zc~C342w4tJHXCK3fP48UE%jvKDPIcCL4;>f@q44yn)C`MJ&LL2o^m$fejN3u31pI? zNVjXE@@bC;qlBii%ee&GU9HRlbQxAF>#&+#8P=>)8&$)`hG)#LB*bNA%eEBDwnrc& zsMMZiG}Q&&)vZrdl`;YBhJrBzVOvv|2rbbrO1LNRBuo1A5>NaDBVsNSn)F4KJi$d2 zo3GexWmud(L0+j!IOIcny8SxdXcwEbm(T9B4z}76>U6;Ki&@r)(=~K|5N1S(M}k&2 z9P<=Sp|888E{;{`*49eF+PvlAe=bVUF7%N@O?dP=jI&#MCRVrc?}iH8X#v9%r~DrK=<`k(Ga+eOOq*?5+#4KDS1pV$ zV&L7+C&SMBHiS1RNmy{NKd=ix6KtGJ(`!fQVC(-ZeZES!VQ1&ri!(|wuz)d%Z>fy` z%Q?X$|9iFa|Hb@&z3CVEUzz{6{N?X|e_5q}YT{ST|44QLjx)-X4+Rp2U_!QEz8&q` zXTO|CCUF6BFgtKme>H?6F~MI9mCM&Z?dd@fGth%9!k=~Z=oV><5zEXVkT)4MLribX zAPadvxe=d>Pd#KMf1U;EC(tpa8T?0JE^C$@<;A>VXdp?D-(=E^c}7zq3WAU)$hD#{ sj#`t4=YjqZoapU2*${WJ^j?3;j+ews2`nYBl)zE~O9?C`@Z}QtFI?3JZvX%Q literal 0 HcmV?d00001 diff --git a/pluie/alpine-apache-fpm/install.d/10-apache.sh b/pluie/alpine-apache-fpm/install.d/10-apache.sh new file mode 100755 index 0000000..167940f --- /dev/null +++ b/pluie/alpine-apache-fpm/install.d/10-apache.sh @@ -0,0 +1,8 @@ +#!/bin/bash +# @app pluie/alpine-apache +# @author a-Sansara https://git.pluie.org/pluie/docker-images + +apk --update add apache2 apache2-proxy apache2-proxy-html apache-mod-fcgid libxml2 \ +php5-fpm php5-cli php5-phar php5-zlib php5-zip php5-ctype php5-xml php5-pdo_mysql php5-mysqli \ +php5-opcache php5-pdo php5-json php5-curl php5-gd php5-mcrypt php5-openssl php5-dom \ +# php-pdo_odbc php-soap php-pgsql diff --git a/pluie/alpine-apache-fpm/install.d/50-fix-apache.sh b/pluie/alpine-apache-fpm/install.d/50-fix-apache.sh new file mode 100755 index 0000000..dd8fb00 --- /dev/null +++ b/pluie/alpine-apache-fpm/install.d/50-fix-apache.sh @@ -0,0 +1,50 @@ +#!/bin/bash +# @app pluie/alpine-apache +# @author a-Sansara https://git.pluie.org/pluie/docker-images + +function a2setModule(){ + local enable=${1:-''} + local path=${3:-'/etc/apache2/httpd.conf'} + local scom='' + local rcom='\#' + if [ ! -z $1 ] && [ ! -z "$2" ]; then + if [ "$enable" = 1 ]; then + scom='\#' + rcom='' + fi + echo "$2" + sed -i "s#${scom}LoadModule $2_module modules/mod_$2.so#${rcom}LoadModule $2_module modules/mod_$2.so#" "$path" + fi +} + +ln -s /usr/lib/libxml2.so.2 /usr/lib/libxml2.so +mkdir -p /app/$WWW_DIR +mkdir /run/apache2 +chown -R 1000:apache /app/$WWW_DIR +chmod -R 755 /scripts/pre-init.d +mkdir -p /run/apache2 +chown apache:apache /run/apache2 +tmpsed='s#^DocumentRoot ".*#DocumentRoot "/app/'$WWW_DIR'"#g' +sed -i "$tmpsed" /etc/apache2/httpd.conf +sed -i 's#AllowOverride none#AllowOverride All#' /etc/apache2/httpd.conf +initTitle "Apache" "Loading Modules" +a2setModule 1 "rewrite" +a2setModule 1 "mpm_event" +a2setModule 1 "slotmem_shm" +a2setModule 1 "heartmonitor" +a2setModule 1 "watchdog" +initTitle "Apache" "Removing Modules" +a2setModule 0 "mpm_prefork" +a2setModule 0 "proxy_fdpass" /etc/apache2/conf.d/proxy.conf +echo +tmpsed="/etc/php5/php.ini" +sed -ir 's/expose_php = On/expose_php = Off/' $tmpsed +sed -i "s|;*date.timezone =.*|date.timezone = ${TZ}|i" $tmpsed +sed -i "s|;*cgi.fix_pathinfo=.*|cgi.fix_pathinfo= 0|i" /etc/php5/php.ini +tmpsed="/etc/php5/php-fpm.conf" +sed -i "s|;*daemonize\s*=\s*yes|daemonize = no|g" $tmpsed +sed -i "s|;*listen\s*=\s*127.0.0.1:9000|listen = 9000|g" $tmpsed +sed -i "s|;*listen\s*=\s*/||g" $tmpsed +sed -i "s|pm = dynamic|pm = ondemand|g" $tmpsed +echo -e "\nIncludeOptional /app/vhost" >> /etc/apache2/httpd.conf +unset tmpsed diff --git a/pluie/alpine-apache-fpm/main.sh b/pluie/alpine-apache-fpm/main.sh new file mode 100755 index 0000000..6e25597 --- /dev/null +++ b/pluie/alpine-apache-fpm/main.sh @@ -0,0 +1,12 @@ +#!/bin/bash +# @app pluie/alpine-apache +# @author a-Sansara https://git.pluie.org/pluie/docker-images + +. /scripts/common.sh + +sleep 3 && \ +initTitle "Starting" "Apache Daemon" && \ +httpd +initTitle "Starting" "PHP-FPM" +/usr/bin/php-fpm & +tail -F /var/log/apache2/error.log diff --git a/pluie/alpine-apache-fpm/pre-init.d/10-apache.sh b/pluie/alpine-apache-fpm/pre-init.d/10-apache.sh new file mode 100755 index 0000000..1a3b8c2 --- /dev/null +++ b/pluie/alpine-apache-fpm/pre-init.d/10-apache.sh @@ -0,0 +1,8 @@ +#!/usr/bin/bash +# @app pluie/alpine-apache +# @author a-Sansara https://git.pluie.org/pluie/docker-images + +if [ ! -z "$FIX_OWNERSHIP" ] && [ "$FIX_OWNERSHIP" -eq 1 ] && [ -d /app/$WWW_DIR ]; then + chown -R 1000:apache /app/$WWW_DIR +fi +touch /var/log/apache2/error.log diff --git a/pluie/alpine-apache-fpm/pre-init.d/10-vhost.sh b/pluie/alpine-apache-fpm/pre-init.d/10-vhost.sh new file mode 100755 index 0000000..b7184f9 --- /dev/null +++ b/pluie/alpine-apache-fpm/pre-init.d/10-vhost.sh @@ -0,0 +1,27 @@ +#!/usr/bin/bash +# @app pluie/alpine-apache +# @author a-Sansara https://git.pluie.org/pluie/docker-images + +if [ ! -z "/app/vhost" ]; then + cat < "/app/vhost" + + ServerName $HTTP_SERVER_NAME + SetEnvIfNoCase ^Authorization$ "(.+)" HTTP_AUTHORIZATION=$1 + + SetHandler proxy:fcgi://127.0.0.1:9000 + + + AllowOverride None + Require all granted + DirectoryIndex $WWW_INDEX + + Options -MultiViews +FollowSymlinks + RewriteEngine On + RewriteCond %{REQUEST_FILENAME} !-f + RewriteRule ^ $WWW_INDEX [QSA,L] + + + +# IncludeOptional /app/vhost2 +EOF +fi diff --git a/pluie/alpine-apache/Dockerfile b/pluie/alpine-apache/Dockerfile index 391fcea..7f42834 100644 --- a/pluie/alpine-apache/Dockerfile +++ b/pluie/alpine-apache/Dockerfile @@ -9,7 +9,7 @@ ADD files.tar /scripts ENV SHENV_NAME=Apache \ SHENV_COLOR=67 \ - HTTP_SERVER_NAME=docker-site.dev \ + HTTP_SERVER_NAME=site.docker \ WWW_DIR=www \ WWW_INDEX=index \ FIX_OWNERSHIP=1 \ diff --git a/pluie/alpine-apache/README.md b/pluie/alpine-apache/README.md index 24ff143..a807507 100644 --- a/pluie/alpine-apache/README.md +++ b/pluie/alpine-apache/README.md @@ -3,6 +3,7 @@ - [index][1] - [pluie/alpine][2] ( < 10 MB ) Alpine/3.4 - [pluie/alpine-apache][3] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24 + - [pluie/alpine-apache-fpm][7] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24 Fpm - [pluie/alpine-symfony][6] ( ~ 81 MB ) - [pluie/alpine-mysql][4] ( ~172 MB ) Mysql/5.5.47 ( MariaDB ) - [docker tips][5] @@ -78,10 +79,10 @@ for more commands : ``` $ docker exec -it apache "httpd -h" ``` - [1]: https://github.com/pluie-org/docker-images [2]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine [3]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-mysql [4]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache + [7]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache-fpm [5]: https://github.com/pluie-org/docker-images/blob/master/DOCKER.md [6]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-symfony diff --git a/pluie/alpine-apache/files.tar b/pluie/alpine-apache/files.tar index fb86f55ded3d12117b1ac1a9e49576765993cbf5..adf7d142bec9060d69f84871062cae9c07abaca4 100644 GIT binary patch delta 716 zcmZn&Xb9NQ%OYT6WM*t&&R}3@Y;0`KpkO-Lkuha6BWp9Gq=}I!gQ1bRsS#X>sgao> zgMtA>3HuYq`ry%G{1c3#Nt$iILFeGjQpa^s>G7a{5%x}B@I1oO(g}7kdT0Q z$IuWD{~*sO#}H3{KU)<;E(IX4am&m}E%r?;NzPD+(JRO(P_YAxgXDl_dnD$ijRynX8?qTR+gd$1_lsw^brQxZGOPf&a{cAhegoX$jHpZ)ClA` zBU3ZD=LDM=rHqV#o`(9))X3NnsK(5|!~pI);hjwNKKY3$zWFJoIjIV{1-bDBMX71| zMcMJWP$4i?tPkYIBT4HO=PSo3ldV-XrgR;fLk9i%sM0RX2v=@0+_ delta 208 zcmZn&Xb9NQ%OYT8WM*J)$Y5Y-3BICY~M^L7+MVQxjv5QAVZ)aH9m97^Mu24a}it8JL(E z8v)gr8JGaoK+O`~$u#+v81LkGvGUFT#1An}l4_MOF@@O>6BGkpL6 diff --git a/pluie/alpine-apache/install.d/10-apache.sh b/pluie/alpine-apache/install.d/10-apache.sh index 47a78b9..730232b 100755 --- a/pluie/alpine-apache/install.d/10-apache.sh +++ b/pluie/alpine-apache/install.d/10-apache.sh @@ -2,7 +2,7 @@ # @app pluie/alpine-apache # @author a-Sansara https://git.pluie.org/pluie/docker-images -apk --update add apache2 \ +apk --update add apache2 apache2-proxy \ php5-apache2 php5-cli php5-phar php5-zlib php5-zip php5-ctype php5-mysqli php5-xml php5-pdo_mysql \ -php5-opcache php5-pdo php5-json php5-curl php5-gd php5-mcrypt php5-openssl php5-dom \ +php5-opcache php5-pdo php5-json php5-curl php5-gd php5-mcrypt php5-openssl php5-dom \ # php-pdo_odbc php-soap php-pgsql diff --git a/pluie/alpine-apache/install.d/50-fix-apache.sh b/pluie/alpine-apache/install.d/50-fix-apache.sh index ed7a61a..8efba9a 100755 --- a/pluie/alpine-apache/install.d/50-fix-apache.sh +++ b/pluie/alpine-apache/install.d/50-fix-apache.sh @@ -10,7 +10,10 @@ chown apache:apache /run/apache2 tmpsed='s#^DocumentRoot ".*#DocumentRoot "/app/'$WWW_DIR'"#g' sed -i "$tmpsed" /etc/apache2/httpd.conf sed -i 's#AllowOverride none#AllowOverride All#' /etc/apache2/httpd.conf +sed -i 's#LoadModule mpm_prefork_module modules/mod_mpm_prefork.so#\#LoadModule mpm_prefork_module modules/mod_mpm_prefork.so#' /etc/apache2/httpd.conf sed -i 's#\#LoadModule rewrite_module modules/mod_rewrite.so#LoadModule rewrite_module modules/mod_rewrite.so#' /etc/apache2/httpd.conf +sed -i 's#\#LoadModule mpm_event_module modules/mod_mpm_event.so#LoadModule mpm_event_module modules/mod_mpm_event.so#' /etc/apache2/httpd.conf +sed -i 's#\#LoadModule slotmem_shm_module modules/mod_slotmem_shm.so#LoadModule slotmem_shm_module modules/mod_slotmem_shm.so#' /etc/apache2/httpd.conf sed -ir 's/expose_php = On/expose_php = Off/' /etc/php5/php.ini echo -e "\nIncludeOptional /app/vhost" >> /etc/apache2/httpd.conf unset tmpsed diff --git a/pluie/alpine-apache/pre-init.d/10-vhost.sh b/pluie/alpine-apache/pre-init.d/10-vhost.sh index 931695a..b7184f9 100755 --- a/pluie/alpine-apache/pre-init.d/10-vhost.sh +++ b/pluie/alpine-apache/pre-init.d/10-vhost.sh @@ -6,6 +6,10 @@ if [ ! -z "/app/vhost" ]; then cat < "/app/vhost" ServerName $HTTP_SERVER_NAME + SetEnvIfNoCase ^Authorization$ "(.+)" HTTP_AUTHORIZATION=$1 + + SetHandler proxy:fcgi://127.0.0.1:9000 + AllowOverride None Require all granted diff --git a/pluie/alpine-mysql/README.md b/pluie/alpine-mysql/README.md index 214931d..b757621 100644 --- a/pluie/alpine-mysql/README.md +++ b/pluie/alpine-mysql/README.md @@ -3,6 +3,7 @@ - [index][1] - [pluie/alpine][2] ( < 10 MB ) Alpine/3.4 - [pluie/alpine-apache][3] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24 + - [pluie/alpine-apache-fpm][7] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24 Fpm - [pluie/alpine-symfony][6] ( ~ 81 MB ) - [pluie/alpine-mysql][4] ( ~172 MB ) Mysql/5.5.47 ( MariaDB ) - [docker tips][5] @@ -130,5 +131,6 @@ docker run --name mycontainer --link mysql:db ... [2]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine [3]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-mysql [4]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache + [7]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache-fpm [5]: https://github.com/pluie-org/docker-images/blob/master/DOCKER.md [6]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-symfony diff --git a/pluie/alpine-symfony/Dockerfile b/pluie/alpine-symfony/Dockerfile index dc49bae..bc18bf6 100644 --- a/pluie/alpine-symfony/Dockerfile +++ b/pluie/alpine-symfony/Dockerfile @@ -1,7 +1,7 @@ # @app pluie/alpine-symfony # @author a-Sansara https://git.pluie.org/pluie/docker-images -FROM pluie/alpine-apache +FROM pluie/alpine-apache-fpm MAINTAINER a-Sansara https://github.com/a-sansara diff --git a/pluie/alpine-symfony/README.md b/pluie/alpine-symfony/README.md index b834b0b..77358fa 100644 --- a/pluie/alpine-symfony/README.md +++ b/pluie/alpine-symfony/README.md @@ -3,6 +3,7 @@ - [index][1] - [pluie/alpine][2] ( < 10 MB ) Alpine/3.4 - [pluie/alpine-apache][3] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24 + - [pluie/alpine-apache-fpm][7] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24 Fpm - [pluie/alpine-symfony][6] ( ~ 81 MB ) - [pluie/alpine-mysql][4] ( ~172 MB ) Mysql/5.5.47 ( MariaDB ) - [docker tips][5] @@ -70,5 +71,6 @@ $ docker exec -it apache "httpd -h" [2]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine [3]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-mysql [4]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache + [7]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache-fpm [5]: https://github.com/pluie-org/docker-images/blob/master/DOCKER.md [6]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-symfony diff --git a/pluie/alpine-symfony/files.tar b/pluie/alpine-symfony/files.tar index 9fe64a4b03683fbc27f4706d2ec87f41e750091f..ef70bd138e2b589231f9e1574f715dc0010338af 100644 GIT binary patch delta 96 zcmZn&Xb70lBWP@7XlQP3%wS+>Y;0`KpkO-Lkuha6BV#k8q^W@+gQ1bRDME>Y;0`GpkO-Lkuha6BV#k8q=~T^gQ1bRDOic2IZ%nI anV~U*f&oMcGZ)ijJ=RMT6_gjTDFFb@$`Qr@ diff --git a/pluie/alpine-symfony/pre-init.d/10-symfony.sh b/pluie/alpine-symfony/pre-init.d/10-symfony.sh index 308e947..0eb8b8d 100644 --- a/pluie/alpine-symfony/pre-init.d/10-symfony.sh +++ b/pluie/alpine-symfony/pre-init.d/10-symfony.sh @@ -9,5 +9,6 @@ if [ ! -d /app/$WWW_DIR ]; then symfony new app $SYMFONY_VERSION mv app/* /app/ chown -R 1000:apache /app/ + chown -R 1000:nogroup /app/var chmod -R g+w /app fi diff --git a/pluie/alpine/README.md b/pluie/alpine/README.md index 4e82852..47d31e3 100644 --- a/pluie/alpine/README.md +++ b/pluie/alpine/README.md @@ -3,6 +3,7 @@ - [index][1] - [pluie/alpine][2] ( < 10 MB ) Alpine/3.4 - [pluie/alpine-apache][3] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24 + - [pluie/alpine-apache-fpm][7] ( ~ 50 MB ) Apache/2.4.23 Php/5.6.24 Fpm - [pluie/alpine-symfony][6] ( ~ 81 MB ) - [pluie/alpine-mysql][4] ( ~172 MB ) Mysql/5.5.47 ( MariaDB ) - [docker tips][5] @@ -95,5 +96,6 @@ VOLUME /app [2]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine [3]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-mysql [4]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache + [7]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-apache-fpm [5]: https://github.com/pluie-org/docker-images/blob/master/DOCKER.md [6]: https://github.com/pluie-org/docker-images/tree/master/pluie/alpine-symfony