--- services: guacamole: image: guacamole/guacamole:${GUACAMOLE_VERSION} restart: unless-stopped depends_on: - guacd - mariadb environment: - GUACD_HOSTNAME=guacd - MYSQL_HOSTNAME=mariadb - MYSQL_DATABASE=${MARIADB_NAME} - MYSQL_USER=${MARIADB_USER} - MYSQL_PASSWORD=${MARIADB_PASS} labels: ### Section Træfik - traefik.enable=${TRAEFIK_ENABLED} - traefik.docker.network=${TRAEFIK_NETWORK} ## HTTP - traefik.http.routers.http-${TRAEFIK_ROUTER}.entrypoints=http # redirect to HTTPS only - traefik.http.routers.http-${TRAEFIK_ROUTER}.middlewares=${TRAEFIK_HTTP_MIDDLEWARES} - traefik.http.routers.http-${TRAEFIK_ROUTER}.rule=${TRAEFIK_MATCHRULE} ## HTTPS - traefik.http.routers.https-${TRAEFIK_ROUTER}.entrypoints=https # configure the exposed service - traefik.http.routers.https-${TRAEFIK_ROUTER}.middlewares=${TRAEFIK_HTTPS_MIDDLEWARES} - traefik.http.routers.https-${TRAEFIK_ROUTER}.rule=${TRAEFIK_MATCHRULE} # enable TLS and its certificate provider - traefik.http.routers.https-${TRAEFIK_ROUTER}.tls=${TRAEFIK_TLSENABLED} - traefik.http.routers.https-${TRAEFIK_ROUTER}.tls.certresolver=${TRAEFIK_CERTRESOLVER} # specify a service so a custom port can be used - traefik.http.services.${TRAEFIK_SERVICE}.loadbalancer.server.port=${TRAEFIK_SERVICE_PORT} ### Section Diun - diun.enable=${DIUN_GUACAMOLE_ENABLE} - diun.watch_repo=${DIUN_GUACAMOLE_WATCHREPO} - diun.sort_tags=${DIUN_GUACAMOLE_SORTALGO} - diun.include_tags=${DIUN_GUACAMOLE_INCLUDE} - diun.exclude_tags=${DIUN_GUACAMOLE_EXCLUDE} networks: - internal - traefik guacd: image: guacamole/guacd:${GUACD_VERSION} restart: unless-stopped labels: ### Section Diun - diun.enable=${DIUN_GUACD_ENABLE} - diun.watch_repo=${DIUN_GUACD_WATCHREPO} - diun.sort_tags=${DIUN_GUACD_SORTALGO} - diun.include_tags=${DIUN_GUACD_INCLUDE} - diun.exclude_tags=${DIUN_GUACD_EXCLUDE} networks: - internal mariadb: image: mariadb:${MARIADB_VERSION} restart: unless-stopped environment: - MARIADB_ROOT_PASSWORD=${MARIADB_ROOT} - MARIADB_DATABASE=${MARIADB_NAME} - MARIADB_USER=${MARIADB_USER} - MARIADB_PASSWORD=${MARIADB_PASS} labels: ### Section Diun - diun.enable=${DIUN_MARIADB_ENABLE} - diun.watch_repo=${DIUN_MARIADB_WATCHREPO} - diun.sort_tags=${DIUN_MARIADB_SORTALGO} - diun.include_tags=${DIUN_MARIADB_INCLUDE} - diun.exclude_tags=${DIUN_MARIADB_EXCLUDE} networks: - internal volumes: - ${MARIADB_DATA}:/var/lib/mysql networks: internal: traefik: external: true name: ${TRAEFIK_NETWORK}