networks: traefik: external: true db: external: false services: nextcloud: container_name: nextcloud image: lscr.io/linuxserver/nextcloud:latest restart: unless-stopped networks: - traefik - db environment: PUID: "{{ service_user.uid }}" PGID: "{{ service_user.uid }}" TZ: "{{ timezone }}" volumes: - "{{ data_dir }}/{{ role_name }}/config:/config" - "{{ data_dir }}/{{ role_name }}/data:/data" labels: traefik.enable: true traefik.http.routers.nextcloud.rule: "Host(`{{ role_name }}.{{ personal_domain }}`)" traefik.http.services.nextcloud.loadbalancer.server.port: 443 traefik.http.services.nextcloud.loadbalancer.server.scheme: https mariadb: container_name: mariadb image: lscr.io/linuxserver/mariadb:latest restart: unless-stopped networks: - db environment: - PUID={{ service_user.uid }} - PGID={{ service_user.uid }} - TZ={{ timezone }} - MYSQL_DATABASE={{ role_name }} - MYSQL_USER={{ role_name }} - MYSQL_PASSWORD={{ role_name }} - MYSQL_ROOT_PASSWORD={{ role_name }} volumes: - "{{ data_dir }}/mariadb/{{ role_name }}:/config" redis: image: redis:7-alpine restart: unless-stopped networks: - db volumes: - "{{ data_dir }}/redis/{{ role_name }}:/data"