From fdffdf3f624f2897336d312178fc24c638762eb7 Mon Sep 17 00:00:00 2001 From: thiuda Date: Tue, 31 Oct 2023 18:54:56 +0100 Subject: [PATCH] feat(scaling): add support for loadbalancing --- .ansible-lint | 0 defaults/main.yml | 3 +++ meta/main.yml | 0 tasks/main.yml | 0 templates/.env.j2 | 0 templates/collabora.conf.j2 | 0 templates/docker-compose.yml.j2 | 14 ++++++++++++-- 7 files changed, 15 insertions(+), 2 deletions(-) mode change 100644 => 100755 .ansible-lint mode change 100644 => 100755 defaults/main.yml mode change 100644 => 100755 meta/main.yml mode change 100644 => 100755 tasks/main.yml mode change 100644 => 100755 templates/.env.j2 mode change 100644 => 100755 templates/collabora.conf.j2 mode change 100644 => 100755 templates/docker-compose.yml.j2 diff --git a/.ansible-lint b/.ansible-lint old mode 100644 new mode 100755 diff --git a/defaults/main.yml b/defaults/main.yml old mode 100644 new mode 100755 index 5b82baf..a846a08 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -2,8 +2,11 @@ collabora_domain: collabora.example.url collabora_image: tiredofit/collabora-online collabora_version: 2.4.19 +collabora_nginx_image: nginxproxy/nginx-proxy +collabora_nginx_version: 1.3.1-alpine collabora_container_hostname: collabora collabora_allowed_hosts: "host2.example.url" +collabora_scale: 1 collabora_port: 9980 collabora_admin: testuser collabora_secret: test123 diff --git a/meta/main.yml b/meta/main.yml old mode 100644 new mode 100755 diff --git a/tasks/main.yml b/tasks/main.yml old mode 100644 new mode 100755 diff --git a/templates/.env.j2 b/templates/.env.j2 old mode 100644 new mode 100755 diff --git a/templates/collabora.conf.j2 b/templates/collabora.conf.j2 old mode 100644 new mode 100755 diff --git a/templates/docker-compose.yml.j2 b/templates/docker-compose.yml.j2 old mode 100644 new mode 100755 index 26f27c9..d28e1e9 --- a/templates/docker-compose.yml.j2 +++ b/templates/docker-compose.yml.j2 @@ -4,18 +4,28 @@ version: "3.4" services: + loadbalancer: + image: "{{ collabora_nginx_image }}:{{ collabora_nginx_version }}" + ports: + - "127.0.0.1:{{ collabora_port }}:80" + volumes: + - /var/run/docker.sock:/tmp/docker.sock:ro collabora: image: "{{ collabora_image }}:{{ collabora_version }}" container_name: {{ collabora_container_hostname }} hostname: {{ collabora_domain }} restart: unless-stopped + scale: {{ collabora_scale }} cap_add: - MKNOD - NET_ADMIN privileged: true - ports: - - "127.0.0.1:{{ collabora_port }}:9980" + expose: + - "9980" volumes: - ./logs:/logs env_file: - ./.env + environment: + - VIRTUAL_HOST={{ collabora_domain }} + - USE_IP_HASH=1