From 112d5e438f00207b2c088f7f89aa3871d42d0f19 Mon Sep 17 00:00:00 2001 From: Christian Elberfeld <elberfeld@web.de> Date: Tue, 17 Oct 2017 23:53:22 +0200 Subject: [PATCH] =?UTF-8?q?docker=20f=C3=BCr=20wordpress=20umzug,=20aktuel?= =?UTF-8?q?l=20als=20www-test=20bereitgestellt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- host_vars/webserver | 3 +- webserver/docker_wordpress/tasks/main.yml | 39 +++++++++++++++++++ .../templates/docker-compose.yml | 30 ++++++++++++++ .../docker_wordpress/templates/uploads.ini | 6 +++ webserver/main.yml | 1 + webserver/nginx/includes/www-test | 12 ++++++ webserver/nginx/tasks/main.yml | 3 +- 7 files changed, 92 insertions(+), 2 deletions(-) create mode 100644 webserver/docker_wordpress/tasks/main.yml create mode 100644 webserver/docker_wordpress/templates/docker-compose.yml create mode 100644 webserver/docker_wordpress/templates/uploads.ini create mode 100644 webserver/nginx/includes/www-test diff --git a/host_vars/webserver b/host_vars/webserver index c08961eb..66ba603e 100644 --- a/host_vars/webserver +++ b/host_vars/webserver @@ -40,7 +40,8 @@ webserver_domains: - "mattermost" - "pad" - "wiki" - + - "www-test" + administratorenteam: - "void" - "dray" diff --git a/webserver/docker_wordpress/tasks/main.yml b/webserver/docker_wordpress/tasks/main.yml new file mode 100644 index 00000000..1def8133 --- /dev/null +++ b/webserver/docker_wordpress/tasks/main.yml @@ -0,0 +1,39 @@ +--- +- name: get secrets from server 1 + slurp: src={{ item }} + with_items: + - /srv/wordpress/mysql_root_pass + - /srv/wordpress/mysql_user_pass + register: wordpress_secrets + +- name: get secrets from server 2 + set_fact: + mysql_root_pass: "{{ wordpress_secrets.results | selectattr('item', 'equalto', '/srv/wordpress/mysql_root_pass') | map(attribute='content') | list | first | b64decode | regex_replace('\\s', '') }}" + mysql_user_pass: "{{ wordpress_secrets.results | selectattr('item', 'equalto', '/srv/wordpress/mysql_user_pass') | map(attribute='content') | list | first | b64decode | regex_replace('\\s', '') }}" + +- name: create folder struct for wordpress + file: + path: "{{ item }}" + state: "directory" + owner: www-data + group: www-data + with_items: + - "/srv/wordpress/" + - "/srv/wordpress/config" + - "/srv/wordpress/data/" + - "/srv/wordpress/db/" + +- name: create config files + template: src={{ item }} dest=/srv/wordpress/config/{{ item }} + with_items: + - uploads.ini + +- name: create config file + template: src={{ item }} dest=/srv/wordpress/{{ item }} + with_items: + - docker-compose.yml + +- name: start wordpress docker + docker_service: + project_src: /srv/wordpress/ + state: present diff --git a/webserver/docker_wordpress/templates/docker-compose.yml b/webserver/docker_wordpress/templates/docker-compose.yml new file mode 100644 index 00000000..09b6703b --- /dev/null +++ b/webserver/docker_wordpress/templates/docker-compose.yml @@ -0,0 +1,30 @@ + +version: "3" + +services: + + db: + + image: mariadb:10 + restart: always + volumes: + - /srv/wordpress/db/:/var/lib/mysql + environment: + MYSQL_ROOT_PASSWORD: "{{ mysql_root_pass }}" + MYSQL_PASSWORD: "{{ mysql_user_pass }}" + MYSQL_DATABASE: wordpress + MYSQL_USER: wordpress + + app: + + image: wordpress:4.8.2-php7.1-apache + restart: always + volumes: + - /srv/wordpress/config/uploads.ini:/usr/local/etc/php/conf.d/uploads.ini + - /srv/wordpress/data:/var/www/html + ports: + - 127.0.0.1:42006:80 + environment: + WORDPRESS_DB_HOST: db + WORDPRESS_DB_USER: wordpress + WORDPRESS_DB_PASSWORD: "{{ mysql_user_pass }}" diff --git a/webserver/docker_wordpress/templates/uploads.ini b/webserver/docker_wordpress/templates/uploads.ini new file mode 100644 index 00000000..c32c80ec --- /dev/null +++ b/webserver/docker_wordpress/templates/uploads.ini @@ -0,0 +1,6 @@ + +file_uploads = On +memory_limit = 64M +upload_max_filesize = 64M +post_max_size = 64M +max_execution_time = 600 diff --git a/webserver/main.yml b/webserver/main.yml index 7514f84e..f53ada6f 100644 --- a/webserver/main.yml +++ b/webserver/main.yml @@ -14,4 +14,5 @@ - { role: docker_matterbridge, tags: matterbridge } - { role: docker_warpinfra, tags: warpinfra } - { role: docker_warpinfratest, tags: warpinfratest } + - { role: docker_wordpress, tags: wordpress } diff --git a/webserver/nginx/includes/www-test b/webserver/nginx/includes/www-test new file mode 100644 index 00000000..c171375d --- /dev/null +++ b/webserver/nginx/includes/www-test @@ -0,0 +1,12 @@ + + location / { + + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + + proxy_pass http://127.0.0.1:42006/; + proxy_redirect off; + + } diff --git a/webserver/nginx/tasks/main.yml b/webserver/nginx/tasks/main.yml index 8ac78368..abe3edee 100644 --- a/webserver/nginx/tasks/main.yml +++ b/webserver/nginx/tasks/main.yml @@ -70,7 +70,8 @@ - name: Konfig-Datei default erstellen template: src=nginx-site dest=/etc/nginx/sites-enabled/{{ item }}.wapzone.ms - with_items: webserver_domains + with_items: + - "{{webserver_domains}}" notify: restart nginx -- GitLab