Adjusted variables and docker-compose file to account for multitenancy setups.

This commit is contained in:
Joschka Seydell 2020-11-30 13:40:48 -08:00
parent 525a7336f2
commit da24f66926
2 changed files with 17 additions and 13 deletions

View file

@ -2,7 +2,10 @@
# defaults file for ONLYOFFICE Document Server # defaults file for ONLYOFFICE Document Server
onlyoffice_install_user: '{{ ansible_user }}' # This user must be present on the host onlyoffice_install_user: '{{ ansible_user }}' # This user must be present on the host
onlyoffice_install_path: '/home/{{ onlyoffice_install_user }}' onlyoffice_install_path: '/home/{{ onlyoffice_install_user }}'
onlyoffice_multitenant_label:
onlyoffice_virtual_host: localhost onlyoffice_virtual_host: localhost
onlyoffice_jwt_enabled: false onlyoffice_jwt_enabled: false
onlyoffice_jwt_secret: 'secret' onlyoffice_jwt_secret: 'secret'
onlyoffice_jwt_header: 'Authorization' onlyoffice_jwt_header: 'Authorization'
# Internal variables
onlyoffice_multitenant_postfix: "{{ '_' + onlyoffice_multitenant_label if (onlyoffice_multitenant_label) else '' }}"

View file

@ -2,33 +2,34 @@ version: '3'
services: services:
onlyoffice-document-server: onlyoffice-document-server:
container_name: onlyoffice-document-server
image: onlyoffice/documentserver image: onlyoffice/documentserver
container_name: onlyoffice-document-server{{ onlyoffice_multitenant_label }}
hostname: onlyoffice-document-server{{ onlyoffice_multitenant_label }}
restart: unless-stopped restart: unless-stopped
environment: environment:
- JWT_ENABLED - JWT_ENABLED
- JWT_SECRET - JWT_SECRET
volumes: volumes:
- document_data:/var/www/onlyoffice/Data - document_data{{ onlyoffice_multitenant_label }}:/var/www/onlyoffice/Data
- document_log:/var/log/onlyoffice - document_log{{ onlyoffice_multitenant_label }}:/var/log/onlyoffice
labels: labels:
- "traefik.enable=true" - "traefik.enable=true"
- "traefik.docker.network=traefik_public" - "traefik.docker.network=traefik_public"
- "traefik.http.routers.onlyoffice.rule=Host(`{{ onlyoffice_virtual_host }}`)" - "traefik.http.routers.onlyoffice{{ onlyoffice_multitenant_label }}.rule=Host(`{{ onlyoffice_virtual_host }}`)"
- "traefik.http.routers.onlyoffice.entrypoints=websecure" - "traefik.http.routers.onlyoffice{{ onlyoffice_multitenant_label }}.entrypoints=websecure"
- "traefik.http.routers.onlyoffice.tls=true" - "traefik.http.routers.onlyoffice{{ onlyoffice_multitenant_label }}.tls=true"
- "traefik.http.routers.onlyoffice.tls.certresolver=defaultresolver" - "traefik.http.routers.onlyoffice{{ onlyoffice_multitenant_label }}.tls.certresolver=defaultresolver"
{% if onlyoffice_allow_origin_list %} {% if onlyoffice_allow_origin_list %}
- "traefik.http.middlewares.onlyoffice-headers.headers.accesscontrolalloworiginlist={{ onlyoffice_allow_origin_list }}" - "traefik.http.middlewares.onlyoffice{{ onlyoffice_multitenant_label }}-headers.headers.accesscontrolalloworiginlist={{ onlyoffice_allow_origin_list }}"
{% endif %} {% endif %}
- "traefik.http.middlewares.onlyoffice-headers.headers.customrequestheaders.X-Forwarded-Proto=https" - "traefik.http.middlewares.onlyoffice{{ onlyoffice_multitenant_label }}-headers.headers.customrequestheaders.X-Forwarded-Proto=https"
- "traefik.http.routers.onlyoffice.middlewares=onlyoffice-headers" - "traefik.http.routers.onlyoffice{{ onlyoffice_multitenant_label }}.middlewares=onlyoffice{{ onlyoffice_multitenant_label }}-headers"
networks: networks:
public: public:
volumes: volumes:
document_data: document_data{{ onlyoffice_multitenant_label }}:
document_log: document_log{{ onlyoffice_multitenant_label }}:
networks: networks:
public: public: