services: app-portal: build: . expose: - 3000 env_file: - .env volumes: - app_portal_data:/app/data networks: - dokploy-network labels: - traefik.enable=true - traefik.http.routers.app-portal-web.rule=Host(`portal.apps.next-hd.net`) - traefik.http.routers.app-portal-web.entrypoints=web - traefik.http.routers.app-portal-web.middlewares=redirect-to-https - traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https - traefik.http.routers.app-portal-web.service=app-portal-svc - traefik.http.routers.app-portal-websecure.rule=Host(`portal.apps.next-hd.net`) - traefik.http.routers.app-portal-websecure.entrypoints=websecure - traefik.http.routers.app-portal-websecure.tls.certresolver=letsencrypt - traefik.http.routers.app-portal-websecure.middlewares=oauth-errors@file,oauth-auth@file - traefik.http.routers.app-portal-websecure.service=app-portal-svc - traefik.http.routers.app-portal-admin-websecure.rule=Host(`portal.apps.next-hd.net`) && PathPrefix(`/admin`) - traefik.http.routers.app-portal-admin-websecure.entrypoints=websecure - traefik.http.routers.app-portal-admin-websecure.tls.certresolver=letsencrypt - traefik.http.routers.app-portal-admin-websecure.priority=100 - traefik.http.routers.app-portal-admin-websecure.service=app-portal-svc - traefik.http.services.app-portal-svc.loadbalancer.server.port=3000 restart: unless-stopped networks: dokploy-network: external: true volumes: app_portal_data: