version: '3.8' services: traefik: image: traefik:latest command: - "--api.insecure=true" - "--providers.docker=true" - "--entrypoints.web.address=:80" ports: - "80:80" - "8080:8080" volumes: - /var/run/docker.sock:/var/run/docker.sock mongo: image: mongo:latest ports: - "27017:27017" volumes: - mongo-data:/data/db labels: - "traefik.enable=true" - "traefik.http.routers.mongo.rule=PathPrefix(`/mongo`)" - "traefik.http.services.mongo.loadbalancer.server.port=27017" nats: image: nats:latest ports: - "4222:4222" labels: - "traefik.enable=true" - "traefik.http.routers.nats.rule=PathPrefix(`/nats`)" - "traefik.http.services.nats.loadbalancer.server.port=4222" zinc: image: public.ecr.aws/zinclabs/zincsearch:latest ports: - "4080:4080" labels: - "traefik.enable=true" - "traefik.http.routers.zinc.rule=PathPrefix(`/zinc`)" - "traefik.http.services.zinc.loadbalancer.server.port=4080" dex: image: quay.io/dexidp/dex:latest ports: - "5556:5556" volumes: - ./dex/config.yaml:/etc/dex/cfg/config.yaml command: ["dex", "serve", "/etc/dex/cfg/config.yaml"] labels: - "traefik.enable=true" - "traefik.http.routers.dex.rule=PathPrefix(`/dex`)" - "traefik.http.services.dex.loadbalancer.server.port=5556" ldap: image: bitnami/openldap ports: - "389:389" environment: - LDAP_ADMIN_USERNAME=admin - LDAP_ADMIN_PASSWORD=adminpassword - LDAP_USERS=user01,user02 - LDAP_PASSWORDS=password1,password2 grafana: image: grafana/grafana:latest ports: - "3000:3000" environment: GF_SECURITY_ADMIN_PASSWORD: "admin" labels: - "traefik.enable=true" - "traefik.http.routers.grafana.rule=PathPrefix(`/grafana`)" - "traefik.http.services.grafana.loadbalancer.server.port=3000" loki: image: grafana/loki:latest ports: - "3100:3100" labels: - "traefik.enable=true" - "traefik.http.routers.loki.rule=PathPrefix(`/loki`)" - "traefik.http.services.loki.loadbalancer.server.port=3100" volumes: mongo-data: