From 25ca50dc4c0bedc3ed7f95e591b905f705084c1f Mon Sep 17 00:00:00 2001 From: todstoychev Date: Thu, 10 Nov 2016 09:35:24 +0200 Subject: [PATCH] Created centos-7 image with php 7 using comunity repo https://centos7.iuscommunity.org/ius-release.rpm --- docker/php-nginx/centos-7-php70/Dockerfile | 36 +++++++++++++ .../centos-7-php70/Dockerfile.jinja2 | 12 +++++ .../conf/bin/service.d/nginx.d/10-init.sh | 20 ++++++++ .../conf/bin/service.d/nginx.sh | 7 +++ .../conf/etc/nginx/conf.d/.gitkeep | 0 .../conf/etc/nginx/conf.d/10-php.conf | 3 ++ .../centos-7-php70/conf/etc/nginx/global.conf | 1 + .../centos-7-php70/conf/etc/nginx/main.conf | 4 ++ .../centos-7-php70/conf/etc/nginx/nginx.conf | 35 +++++++++++++ .../centos-7-php70/conf/etc/nginx/php.conf | 1 + .../conf/etc/nginx/ssl/server.crt | 28 ++++++++++ .../conf/etc/nginx/ssl/server.csr | 26 ++++++++++ .../conf/etc/nginx/ssl/server.key | 51 +++++++++++++++++++ .../conf/etc/nginx/vhost.common.conf | 2 + .../conf/etc/nginx/vhost.common.d/.gitkeep | 0 .../vhost.common.d/10-location-root.conf | 3 ++ .../conf/etc/nginx/vhost.common.d/10-php.conf | 7 +++ .../centos-7-php70/conf/etc/nginx/vhost.conf | 38 ++++++++++++++ .../conf/etc/nginx/vhost.ssl.conf | 7 +++ .../conf/etc/supervisor.d/nginx.conf | 14 +++++ .../roles/webdevops-nginx/defaults/main.yml | 3 ++ .../roles/webdevops-nginx/tasks/bootstrap.yml | 48 +++++++++++++++++ .../roles/webdevops-nginx/tasks/main.yml | 5 ++ .../webdevops-php-nginx/defaults/main.yml | 1 + .../webdevops-php-nginx/tasks/bootstrap.yml | 9 ++++ .../webdevops-php-nginx/tasks/entrypoint.yml | 2 + .../roles/webdevops-php-nginx/tasks/main.yml | 9 ++++ 27 files changed, 372 insertions(+) create mode 100644 docker/php-nginx/centos-7-php70/Dockerfile create mode 100644 docker/php-nginx/centos-7-php70/Dockerfile.jinja2 create mode 100644 docker/php-nginx/centos-7-php70/conf/bin/service.d/nginx.d/10-init.sh create mode 100644 docker/php-nginx/centos-7-php70/conf/bin/service.d/nginx.sh create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/nginx/conf.d/.gitkeep create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/nginx/conf.d/10-php.conf create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/nginx/global.conf create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/nginx/main.conf create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/nginx/nginx.conf create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/nginx/php.conf create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/nginx/ssl/server.crt create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/nginx/ssl/server.csr create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/nginx/ssl/server.key create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.common.conf create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.common.d/.gitkeep create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.common.d/10-location-root.conf create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.common.d/10-php.conf create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.conf create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.ssl.conf create mode 100644 docker/php-nginx/centos-7-php70/conf/etc/supervisor.d/nginx.conf create mode 100644 docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-nginx/defaults/main.yml create mode 100644 docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-nginx/tasks/bootstrap.yml create mode 100644 docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-nginx/tasks/main.yml create mode 100644 docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/defaults/main.yml create mode 100644 docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/tasks/bootstrap.yml create mode 100644 docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/tasks/entrypoint.yml create mode 100644 docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/tasks/main.yml diff --git a/docker/php-nginx/centos-7-php70/Dockerfile b/docker/php-nginx/centos-7-php70/Dockerfile new file mode 100644 index 000000000..6725135ec --- /dev/null +++ b/docker/php-nginx/centos-7-php70/Dockerfile @@ -0,0 +1,36 @@ +#+++++++++++++++++++++++++++++++++++++++ +# Dockerfile for webdevops/php-nginx:centos-7-php56 +# -- automatically generated -- +#+++++++++++++++++++++++++++++++++++++++ + +FROM webdevops/php:centos-7-php56 + +MAINTAINER info@webdevops.io +LABEL vendor=WebDevOps.io +LABEL io.webdevops.layout=8 +LABEL io.webdevops.version=0.57.1 + +ENV WEB_DOCUMENT_ROOT /app +ENV WEB_DOCUMENT_INDEX index.php +ENV WEB_ALIAS_DOMAIN *.vm +ENV WEB_PHP_SOCKET 127.0.0.1:9000 + +COPY conf/ /opt/docker/ + +# Remove php5 +RUN yum -y remove php* + +# Install php 7 +RUN wget https://centos7.iuscommunity.org/ius-release.rpm +RUN /usr/local/bin/yum-install ius-release.rpm +RUN /usr/local/bin/yum-install php70u-* + +# Install tools +RUN /usr/local/bin/yum-install \ + nginx \ + && /opt/docker/bin/provision run --tag bootstrap --role webdevops-nginx --role webdevops-php-nginx \ + && /opt/docker/bin/bootstrap.sh + +RUN rm ius-release.rpm + +EXPOSE 80 443 diff --git a/docker/php-nginx/centos-7-php70/Dockerfile.jinja2 b/docker/php-nginx/centos-7-php70/Dockerfile.jinja2 new file mode 100644 index 000000000..846c1d4bf --- /dev/null +++ b/docker/php-nginx/centos-7-php70/Dockerfile.jinja2 @@ -0,0 +1,12 @@ +{{ docker.from("php", "centos-7-php70") }} + +{{ docker.version() }} + +{{ environment.web() }} +{{ environment.webPhp() }} + +{{ docker.copy('conf/', '/opt/docker/') }} + +{{ nginx.centos('php-nginx') }} + +{{ docker.expose('80 443') }} diff --git a/docker/php-nginx/centos-7-php70/conf/bin/service.d/nginx.d/10-init.sh b/docker/php-nginx/centos-7-php70/conf/bin/service.d/nginx.d/10-init.sh new file mode 100644 index 000000000..656e19f64 --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/bin/service.d/nginx.d/10-init.sh @@ -0,0 +1,20 @@ +if [[ ! -e "$WEB_DOCUMENT_ROOT" ]]; then + echo "" + echo "[WARNING] WEB_DOCUMENT_ROOT does not exists with path \"$WEB_DOCUMENT_ROOT\"!" + echo "" +fi + +# Replace markers +find /opt/docker/etc/nginx/ -iname '*.conf' -print0 | xargs -0 -r rpl --quiet "" "$WEB_DOCUMENT_INDEX" +find /opt/docker/etc/nginx/ -iname '*.conf' -print0 | xargs -0 -r rpl --quiet "" "$WEB_DOCUMENT_ROOT" +find /opt/docker/etc/nginx/ -iname '*.conf' -print0 | xargs -0 -r rpl --quiet "" "$WEB_ALIAS_DOMAIN" +find /opt/docker/etc/nginx/ -iname '*.conf' -print0 | xargs -0 -r rpl --quiet "" "$HOSTNAME" + +if [[ -n "${WEB_PHP_SOCKET+x}" ]]; then + ## WEB_PHP_SOCKET is set + find /opt/docker/etc/nginx/ -iname '*.conf' -print0 | xargs -0 -r rpl --quiet "" "$WEB_PHP_SOCKET" +else + ## WEB_PHP_SOCKET is not set, remove PHP files + rm /opt/docker/etc/nginx/conf.d/10-php.conf + rm /opt/docker/etc/nginx/vhost.common.d/10-php.conf +fi diff --git a/docker/php-nginx/centos-7-php70/conf/bin/service.d/nginx.sh b/docker/php-nginx/centos-7-php70/conf/bin/service.d/nginx.sh new file mode 100644 index 000000000..f5cd26167 --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/bin/service.d/nginx.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +source /opt/docker/bin/config.sh + +includeScriptDir "/opt/docker/bin/service.d/nginx.d/" + +exec /usr/sbin/nginx diff --git a/docker/php-nginx/centos-7-php70/conf/etc/nginx/conf.d/.gitkeep b/docker/php-nginx/centos-7-php70/conf/etc/nginx/conf.d/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/docker/php-nginx/centos-7-php70/conf/etc/nginx/conf.d/10-php.conf b/docker/php-nginx/centos-7-php70/conf/etc/nginx/conf.d/10-php.conf new file mode 100644 index 000000000..9abe45f0a --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/etc/nginx/conf.d/10-php.conf @@ -0,0 +1,3 @@ +upstream php { + server ; +} diff --git a/docker/php-nginx/centos-7-php70/conf/etc/nginx/global.conf b/docker/php-nginx/centos-7-php70/conf/etc/nginx/global.conf new file mode 100644 index 000000000..b6141db09 --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/etc/nginx/global.conf @@ -0,0 +1 @@ +# deprecated diff --git a/docker/php-nginx/centos-7-php70/conf/etc/nginx/main.conf b/docker/php-nginx/centos-7-php70/conf/etc/nginx/main.conf new file mode 100644 index 000000000..06de0651b --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/etc/nginx/main.conf @@ -0,0 +1,4 @@ +include /opt/docker/etc/nginx/global.conf; +include /opt/docker/etc/nginx/php.conf; +include /opt/docker/etc/nginx/conf.d/*.conf; +include /opt/docker/etc/nginx/vhost.conf; diff --git a/docker/php-nginx/centos-7-php70/conf/etc/nginx/nginx.conf b/docker/php-nginx/centos-7-php70/conf/etc/nginx/nginx.conf new file mode 100644 index 000000000..f5609826d --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/etc/nginx/nginx.conf @@ -0,0 +1,35 @@ +# For more information on configuration, see: +# * Official English Documentation: http://nginx.org/en/docs/ +# * Official Russian Documentation: http://nginx.org/ru/docs/ + +user nginx; +worker_processes auto; +error_log /var/log/nginx/error.log; +pid /run/nginx.pid; + +events { + worker_connections 1024; +} + +http { + log_format main '$remote_addr - $remote_user [$time_local] "$request" ' + '$status $body_bytes_sent "$http_referer" ' + '"$http_user_agent" "$http_x_forwarded_for"'; + + access_log /var/log/nginx/access.log main; + + sendfile on; + tcp_nopush on; + tcp_nodelay on; + keepalive_timeout 65; + types_hash_max_size 2048; + + include /etc/nginx/mime.types; + default_type application/octet-stream; + + # Load modular configuration files from the /etc/nginx/conf.d directory. + # See http://nginx.org/en/docs/ngx_core_module.html#include + # for more information. + include /etc/nginx/conf.d/*.conf; +} +daemon off; diff --git a/docker/php-nginx/centos-7-php70/conf/etc/nginx/php.conf b/docker/php-nginx/centos-7-php70/conf/etc/nginx/php.conf new file mode 100644 index 000000000..b6141db09 --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/etc/nginx/php.conf @@ -0,0 +1 @@ +# deprecated diff --git a/docker/php-nginx/centos-7-php70/conf/etc/nginx/ssl/server.crt b/docker/php-nginx/centos-7-php70/conf/etc/nginx/ssl/server.crt new file mode 100644 index 000000000..6b0694907 --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/etc/nginx/ssl/server.crt @@ -0,0 +1,28 @@ +-----BEGIN CERTIFICATE----- +MIIE1DCCArwCCQDMMwGnSuK0tTANBgkqhkiG9w0BAQsFADAsMRswGQYDVQQKExJE +b2NrZXIgQm9pbGVycGxhdGUxDTALBgNVBAMUBCoudm0wHhcNMTUwNTA0MTcxNDQw +WhcNMjUwNTAxMTcxNDQwWjAsMRswGQYDVQQKExJEb2NrZXIgQm9pbGVycGxhdGUx +DTALBgNVBAMUBCoudm0wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDK +3TIUiyDvXelWeY9VXMrpjuZtYpVSDsACLpjFUhMnsP5/iKT0VbeZyqHvmwZjAg4G +Y10d+yZDdgv/xeu0HPOFbtR6pCp10d1tdLHZto5Cyuxu7IQsAVjnD6Ko7XFwtNk7 +9o6JZfAFaGL4w5MokrVmCtspnsMZH7/7zU4f96cbF39zLopnpuXGD6t6DA8Qj3gy +0duaTjs42bYRN+rwLzVKAev99iQ4kPMJn4vV6/Xk6rtoSzC67GQyVZYaFypicD1S +NtsRmgEVvjCBDbrLOneUiRwff6qxEsZi7Hxv7BKFj4iUWnII7K/nP7T6uBHQjHO+ +FpsGkU9lCMrCeVFBe8kKz/cbhd+yLUxXwAPr6gSOPmwn232Gy4tozvqZHpbUxsgx +7sT3ej9K66h1D7J+BjNFWYM1hbnC1r7H/xS7EBzBV8qRoQCVe08Juf5xsouXFakD +clLV4+L+1cxkpwsCQDly5g3tm/TBqA2O+ZJ+YHQDHKkzMyhLs6i0X/M5qvJBiLg1 +GLTCS20rpQ5gXTEGuINqHgwXQWkUO6bhgSYqdHGX3zbZ5+qWpI4eui3dHZ1Ll0VH +6Icpb7ORTQwhc6W8KBlybssYPSlGOEBGUjYGNheoz9FpoSkxCis+P8ZNKtrmpPoq +Su0eOOGFOFHG02eOgPVxSwrDeN9MVJo7BPysGMHJmQIDAQABMA0GCSqGSIb3DQEB +CwUAA4ICAQC63g6NHmQKbiy3G6iaDkpUSbr5Mq2YgU61XnvWVyREqDcy/BXCw9oY +SJ/KUvCpqPnACNOFqjadRAmPiA9nf2WduoCgwQGV/YRFGswSuVvh/3X2TX5NWvbS +t8MQDttQg1dxpiMUjlu3rqhfohBdWJvp2lVSdpDb/MOlXBc/+p7HfOHwhqB7wwPN +NNbSKUbZqZxmD8cOf1X0hASr1yfFPj+2vST3ESaON8S0T2p63YX/sD5jvOUiEuyw +I5WcvLmiRZA07SH8nWyckLY3qWL+OlhSZrlAnolWS00b+7h5LNuRYEjKzwVgntoA +aCopyQih6wIk0+AfJO4sfhJBmQhnIrAaP/zwBH5g9zVizLf5H7U+hNXrMwgw55Sq +vjMdkZHvPKUXTvVit/rYE9H+PY3brkRWzOl4V/i/ZLJJm5805H/NyTbz9kPMJw2Q +nn+KOpfXXySD39f8iuRgSKXsYNul38hxWgcZZ6g+sOOp2n/VUmf0eZUWNnJ8i7AP +4Qif7aDKMcibOwSwsB+DKZXDvZ5XSdnMphtuLS5rPSL81rVRmWC2DMfQ2eP8j0WN +VTroSk0xedQ7Qr+9TNooi9IyzX6n1a2S1UiciEZ3ZcDbXPl/P01m+IYZyPnLv0+9 +ZeioZYh1JLv3/OKsMrMLTfh2ZCj3aXwmc2Owi/wU2LS5QUOMcHH7CQ== +-----END CERTIFICATE----- \ No newline at end of file diff --git a/docker/php-nginx/centos-7-php70/conf/etc/nginx/ssl/server.csr b/docker/php-nginx/centos-7-php70/conf/etc/nginx/ssl/server.csr new file mode 100644 index 000000000..8a9909f77 --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/etc/nginx/ssl/server.csr @@ -0,0 +1,26 @@ +-----BEGIN CERTIFICATE REQUEST----- +MIIEcTCCAlkCAQAwLDEbMBkGA1UEChMSRG9ja2VyIEJvaWxlcnBsYXRlMQ0wCwYD +VQQDFAQqLnZtMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAyt0yFIsg +713pVnmPVVzK6Y7mbWKVUg7AAi6YxVITJ7D+f4ik9FW3mcqh75sGYwIOBmNdHfsm +Q3YL/8XrtBzzhW7UeqQqddHdbXSx2baOQsrsbuyELAFY5w+iqO1xcLTZO/aOiWXw +BWhi+MOTKJK1ZgrbKZ7DGR+/+81OH/enGxd/cy6KZ6blxg+regwPEI94MtHbmk47 +ONm2ETfq8C81SgHr/fYkOJDzCZ+L1ev15Oq7aEswuuxkMlWWGhcqYnA9UjbbEZoB +Fb4wgQ26yzp3lIkcH3+qsRLGYux8b+wShY+IlFpyCOyv5z+0+rgR0IxzvhabBpFP +ZQjKwnlRQXvJCs/3G4Xfsi1MV8AD6+oEjj5sJ9t9hsuLaM76mR6W1MbIMe7E93o/ +SuuodQ+yfgYzRVmDNYW5wta+x/8UuxAcwVfKkaEAlXtPCbn+cbKLlxWpA3JS1ePi +/tXMZKcLAkA5cuYN7Zv0wagNjvmSfmB0AxypMzMoS7OotF/zOaryQYi4NRi0wktt +K6UOYF0xBriDah4MF0FpFDum4YEmKnRxl9822efqlqSOHrot3R2dS5dFR+iHKW+z +kU0MIXOlvCgZcm7LGD0pRjhARlI2BjYXqM/RaaEpMQorPj/GTSra5qT6KkrtHjjh +hThRxtNnjoD1cUsKw3jfTFSaOwT8rBjByZkCAwEAAaAAMA0GCSqGSIb3DQEBCwUA +A4ICAQBsEBgC2YepuZq/8UqvKMZKVy/etDKXj7BB+QPb+leNiKD7p4LDxHJsZSH8 +Ku9uMPeLfiQDn5jA41k5SlGttzvObd65RdEbO3yHpqsg05EGSDDLfaE1k2Al/qmX +/o8roPZF7+2kZthgMAgkcokS54LYqEYTGqOf3J9Ss0yRIZwhaOVebfFIbIOdpw0B +JNMIJPHTMdZrcuRVI+wR1uPLIlEJzBvxTGbTrvPU25WJFtu+EajKqXO0SHdy0yx8 +uH4ykRBJRc36+oYo7nZ5D56dh7pZn3+9J64FKAOV0Q3KqMFieGy053ezuhJd70eZ +UozTgfjs3WpMzoYmKETSyl3XZSdInRe+sUlKPruTsKyg69oYxjPlrGfAmmGcCFca +TnZinT18dI92zK7OtOVkmYeYKC1lwuhftVrNMXzZuHOGpS9NNYtc4nDqDMIEOfV3 +6rCdu03WjEgJ+Z67tJs16xOx9du4/EHxS2Ijn9DPfVJvYy0TgzDi1BUpjWx0KTLx +C4OQbEZ/QTWmHVbSch/hcZhzbf7SNh5RpnW4EtmcpDFjIKMfxJmoKeiTf7qnilx0 +7uRvsZFKoDKRDOFiPfgMg5AOtLHziYsd9m0tJjC2GHvFuPjzOtzhnUUjmmvht170 +2aqKakjST4amg7jzLcs871HX0/WjOtt29NpOz140blkKf1bisg== +-----END CERTIFICATE REQUEST----- \ No newline at end of file diff --git a/docker/php-nginx/centos-7-php70/conf/etc/nginx/ssl/server.key b/docker/php-nginx/centos-7-php70/conf/etc/nginx/ssl/server.key new file mode 100644 index 000000000..c9eec145f --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/etc/nginx/ssl/server.key @@ -0,0 +1,51 @@ +-----BEGIN RSA PRIVATE KEY----- +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 +-----END RSA PRIVATE KEY----- \ No newline at end of file diff --git a/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.common.conf b/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.common.conf new file mode 100644 index 000000000..a5df62ef8 --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.common.conf @@ -0,0 +1,2 @@ +# compatibility for PHP and TYPO3 Docker Boilerplate +include /opt/docker/etc/nginx/vhost.common.d/*.conf; diff --git a/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.common.d/.gitkeep b/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.common.d/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.common.d/10-location-root.conf b/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.common.d/10-location-root.conf new file mode 100644 index 000000000..28fd811bc --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.common.d/10-location-root.conf @@ -0,0 +1,3 @@ +location / { + try_files $uri $uri/ /?$query_string; +} diff --git a/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.common.d/10-php.conf b/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.common.d/10-php.conf new file mode 100644 index 000000000..274beac87 --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.common.d/10-php.conf @@ -0,0 +1,7 @@ +location ~ \.php$ { + fastcgi_split_path_info ^(.+\.php)(/.+)$; + fastcgi_pass php; + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $request_filename; + fastcgi_read_timeout 1000; +} diff --git a/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.conf b/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.conf new file mode 100644 index 000000000..33e10bfce --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.conf @@ -0,0 +1,38 @@ +server { + listen 80 default_server; + listen 8000 default_server; + + server_name _ docker; + + access_log /dev/stdout; + error_log /dev/stdout info; + + root ""; + index ; + + client_max_body_size 50m; + + include /opt/docker/etc/nginx/vhost.common.d/*.conf; +} + +############## +# SSL +############## + +server { + listen 443 default_server; + listen 8443 default_server; + + server_name _ docker; + + access_log /dev/stdout; + error_log /dev/stdout info; + + root ""; + index ; + + client_max_body_size 50m; + + include /opt/docker/etc/nginx/vhost.common.d/*.conf; + include /opt/docker/etc/nginx/vhost.ssl.conf; +} diff --git a/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.ssl.conf b/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.ssl.conf new file mode 100644 index 000000000..4ddba251d --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/etc/nginx/vhost.ssl.conf @@ -0,0 +1,7 @@ +ssl on; +ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # not possible to do exclusive +ssl_ciphers 'EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:+CAMELLIA256:+AES256:+CAMELLIA128:+AES128:+SSLv3:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:!ECDSA:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA'; +ssl_prefer_server_ciphers on; + +ssl_certificate /opt/docker/etc/nginx/ssl/server.crt; +ssl_certificate_key /opt/docker/etc/nginx/ssl/server.key; diff --git a/docker/php-nginx/centos-7-php70/conf/etc/supervisor.d/nginx.conf b/docker/php-nginx/centos-7-php70/conf/etc/supervisor.d/nginx.conf new file mode 100644 index 000000000..657bf499b --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/etc/supervisor.d/nginx.conf @@ -0,0 +1,14 @@ +[group:nginx] +programs=nginxd +priority=20 + +[program:nginxd] +command = /opt/docker/bin/service.d/nginx.sh +process_name=%(program_name)s +startsecs = 0 +autostart = true +autorestart = true +stdout_logfile=/dev/stdout +stdout_logfile_maxbytes=0 +stderr_logfile=/dev/stderr +stderr_logfile_maxbytes=0 diff --git a/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-nginx/defaults/main.yml b/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-nginx/defaults/main.yml new file mode 100644 index 000000000..69cba1cb4 --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-nginx/defaults/main.yml @@ -0,0 +1,3 @@ +--- + +DOCUMENT_ROOT: "{{ lookup('env','WEB_DOCUMENT_ROOT') }}" diff --git a/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-nginx/tasks/bootstrap.yml b/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-nginx/tasks/bootstrap.yml new file mode 100644 index 000000000..ca34d3dd3 --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-nginx/tasks/bootstrap.yml @@ -0,0 +1,48 @@ +--- + +- name: Diable nginx demonize mode + lineinfile: + dest: /etc/nginx/nginx.conf + regexp: '[\s;]*{{ item.key }}[\s]*' + line: '{{ item.key }} {{ item.value }};' + with_items: + - { key: 'daemon', value: "off" } + +- name: Enable nginx main config + file: + src: '/opt/docker/etc/nginx/main.conf' + dest: '/etc/nginx/conf.d/10-docker.conf' + state: link + force: yes + +- name: Remove default vhost + file: + path: "/etc/nginx/sites-enabled/default" + state: absent + +- name: Replace default nginx.conf [RedHat/Alpine family] + file: + src: '/opt/docker/etc/nginx/nginx.conf' + dest: '/etc/nginx/nginx.conf' + state: link + force: yes + when: ansible_os_family == 'RedHat' or ansible_os_family == 'Alpine' + +- name: Ensure document root is available + file: + path: "{{ DOCUMENT_ROOT }}" + state: directory + recurse: yes + +- name: Fix rights of ssl files + file: + path: "{{ item.path }}" + state: "{{ item.state }}" + mode: "{{ item.mode }}" + owner: "root" + group: "root" + with_items: + - { path: '/opt/docker/etc/nginx/ssl', state: 'directory', mode: '0750' } + - { path: '/opt/docker/etc/nginx/ssl/server.crt', state: 'file', mode: '0640' } + - { path: '/opt/docker/etc/nginx/ssl/server.csr', state: 'file', mode: '0640' } + - { path: '/opt/docker/etc/nginx/ssl/server.key', state: 'file', mode: '0640' } diff --git a/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-nginx/tasks/main.yml b/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-nginx/tasks/main.yml new file mode 100644 index 000000000..1806c1a8c --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-nginx/tasks/main.yml @@ -0,0 +1,5 @@ +--- + +- include: bootstrap.yml + tags: + - bootstrap diff --git a/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/defaults/main.yml b/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/defaults/main.yml new file mode 100644 index 000000000..ed97d539c --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/defaults/main.yml @@ -0,0 +1 @@ +--- diff --git a/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/tasks/bootstrap.yml b/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/tasks/bootstrap.yml new file mode 100644 index 000000000..a2866e0d0 --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/tasks/bootstrap.yml @@ -0,0 +1,9 @@ +--- + +- name: Restrict php-fpm to local connection + lineinfile: + dest: '/opt/docker/etc/php/fpm/pool.d/application.conf' + regexp: '^[\s;]*{{ item.key }}[\s]*=' + line: '{{ item.key }} = {{ item.value }}' + with_items: + - { key: 'listen', value: "127.0.0.1:9000" } diff --git a/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/tasks/entrypoint.yml b/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/tasks/entrypoint.yml new file mode 100644 index 000000000..cd21505a4 --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/tasks/entrypoint.yml @@ -0,0 +1,2 @@ +--- + diff --git a/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/tasks/main.yml b/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/tasks/main.yml new file mode 100644 index 000000000..7895a52a9 --- /dev/null +++ b/docker/php-nginx/centos-7-php70/conf/provision/roles/webdevops-php-nginx/tasks/main.yml @@ -0,0 +1,9 @@ +--- + +- include: bootstrap.yml + tags: + - bootstrap + +- include: entrypoint.yml + tags: + - entrypoint