From 9ea51d9db76c76d1604d42de596a00c906bdefcd Mon Sep 17 00:00:00 2001 From: Kevin Veen-Birkenbach Date: Thu, 25 May 2023 20:58:52 +0200 Subject: [PATCH] Optimized Joomla --- playbook.yml | 8 ++++ roles/server_docker-joomla/handlers/main.yml | 8 ++++ roles/server_docker-joomla/tasks/main.yml | 40 +++++-------------- .../templates/docker-compose.yml.j2 | 35 ++++++++++++++++ roles/server_docker-joomla/vars/main.yml | 1 + 5 files changed, 61 insertions(+), 31 deletions(-) create mode 100644 roles/server_docker-joomla/handlers/main.yml create mode 100644 roles/server_docker-joomla/templates/docker-compose.yml.j2 create mode 100644 roles/server_docker-joomla/vars/main.yml diff --git a/playbook.yml b/playbook.yml index 5deacbf6..181dfe78 100644 --- a/playbook.yml +++ b/playbook.yml @@ -165,6 +165,14 @@ vars: domain: roulette.{{top_domain}} http_port: 8013 +- name: setup joomla hosts + hosts: joomla + become: true + roles: + - role: server_docker-joomla + vars: + domain: "joomla.{{top_domain}}" + http_port: 8014 - name: setup akaunting hosts hosts: akaunting become: true diff --git a/roles/server_docker-joomla/handlers/main.yml b/roles/server_docker-joomla/handlers/main.yml new file mode 100644 index 00000000..a3578b38 --- /dev/null +++ b/roles/server_docker-joomla/handlers/main.yml @@ -0,0 +1,8 @@ +--- +- name: recreate joomla + command: + cmd: docker-compose -p joomla up -d --force-recreate + chdir: "{{path_docker_compose_folder}}" + environment: + COMPOSE_HTTP_TIMEOUT: 600 + DOCKER_CLIENT_TIMEOUT: 600 diff --git a/roles/server_docker-joomla/tasks/main.yml b/roles/server_docker-joomla/tasks/main.yml index 550fbf69..d1814f98 100644 --- a/roles/server_docker-joomla/tasks/main.yml +++ b/roles/server_docker-joomla/tasks/main.yml @@ -6,34 +6,12 @@ template: src=roles/server_native-docker-reverse-proxy/templates/domain.conf.j2 dest=/etc/nginx/conf.d/{{domain}}.conf notify: restart nginx -- name: "setup joomla" - docker_compose: - project_name: joomla - definition: - application: - image: joomla - log_driver: journald - environment: - JOOMLA_DB_HOST: "database:3306" - JOOMLA_DB_USER: "joomla" - JOOMLA_DB_PASSWORD: "{{joomla_database_password}}" - JOOMLA_DB_NAME: "joomla" - restart: always - links: - - database - volumes: - - joomla-data:/var/www/html - ports: - - "127.0.0.1:{{http_port}}:80" - database: - image: mariadb - log_driver: journald - environment: - MYSQL_DATABASE: "joomla" - MYSQL_USER: "joomla" - MYSQL_PASSWORD: "{{joomla_database_password}}" - MYSQL_ROOT_PASSWORD: "{{joomla_database_password}}" - MARIADB_AUTO_UPGRADE: "1" - volumes: - - joomla-database:/var/lib/mysql - restart: always +- name: "create {{path_docker_compose_folder}}" + file: + path: "{{path_docker_compose_folder}}" + state: directory + mode: 0755 + +- name: add docker-compose.yml + template: src=docker-compose.yml.j2 dest={{path_docker_compose_folder}}docker-compose.yml + notify: recreate joomla \ No newline at end of file diff --git a/roles/server_docker-joomla/templates/docker-compose.yml.j2 b/roles/server_docker-joomla/templates/docker-compose.yml.j2 new file mode 100644 index 00000000..a374aef8 --- /dev/null +++ b/roles/server_docker-joomla/templates/docker-compose.yml.j2 @@ -0,0 +1,35 @@ +version: '3' + +services: + application: + image: joomla + logging: + driver: journald + environment: + JOOMLA_DB_HOST: "database:3306" + JOOMLA_DB_USER: "joomla" + JOOMLA_DB_PASSWORD: "{{joomla_database_password}}" + JOOMLA_DB_NAME: "joomla" + restart: always + links: + - database + volumes: + - data:/var/www/html + ports: + - "127.0.0.1:{{http_port}}:80" + database: + image: mariadb + logging: + driver: journald + environment: + MYSQL_DATABASE: "joomla" + MYSQL_USER: "joomla" + MYSQL_PASSWORD: "{{joomla_database_password}}" + MYSQL_ROOT_PASSWORD: "{{joomla_database_password}}" + MARIADB_AUTO_UPGRADE: "1" + volumes: + - database:/var/lib/mysql + restart: always +volumes: + database: + data: \ No newline at end of file diff --git a/roles/server_docker-joomla/vars/main.yml b/roles/server_docker-joomla/vars/main.yml new file mode 100644 index 00000000..00af7b89 --- /dev/null +++ b/roles/server_docker-joomla/vars/main.yml @@ -0,0 +1 @@ +path_docker_compose_folder: "{{path_docker_compose_files}}joomla/"