services:

  collabora:
    image: collabora/code
    container_name: ${officeServName}
    restart: ${restartPolicy}
    cap_add:
      - MKNOD
      - SYS_CHROOT
      - FOWNER
    # ports:
    #   - 8091:9980
    env_file:
      - ../../secret/env-${officeServName}
    environment:
      - dictionaries=fr_FR en_GB es_ES
      - aliasgroup1=https://.*${cloudHost}.${domain}:443
      # si on veut ajouter d'autres domaines autorisés pour certaines orgas: 
      # - aliasgroup2=https://autre-domaine1:443
      # - aliasgroup3=https://autre-domaine2:443
      - server_name=${site}-${officeHost}.${domain}
      - VIRTUAL_HOST=${site}-${officeHost}.${domain}
      - VIRTUAL_PORT=9980
      - VIRTUAL_PROTO=https
      - extra_params=--o:ssl.enable=false --o:ssl.termination=true
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /etc/timezone:/etc/timezone:ro
    networks:
      collaboraNet:
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.${officeServName}-admin.rule=Host(`${site}-${officeHost}.${domain}`) && PathPrefix(`/(c|l)ool/adminws`)"
      - "traefik.http.routers.${officeServName}-admin.middlewares=test-adminipallowlist@file"
      - "traefik.http.routers.${officeServName}.rule=Host(`${site}-${officeHost}.${domain}`) && ! PathPrefix(`/(c|l)ool/adminws`)"

networks:
  collaboraNet:
    external: true
    name: collaboraNet