services: app: build: context: ./ dockerfile: development.dockerfile ports: - 80:8080 volumes: - ./:/app labels: - traefik.http.routers.app.rule=PathPrefix(`/app`) - traefik.http.services.app.loadbalancer.server.port=8080 - traefik.http.middlewares.app-prefix.stripprefix.prefixes=/app - traefik.http.middlewares.app-prefix.stripprefix.forceSlash=false # see https://doc.traefik.io/traefik/middlewares/stripprefix/#forceslash - traefik.http.routers.app.middlewares=app-prefix # setup a proxy to test hosting on a sub-path; here localhost:8080/app proxy: image: traefik:v2.3 command: - --providers.docker - --accesslog # http access log - --log #Traefik log, for configurations and errors - --api # Enable the Dashboard and API ports: - "8888:80" volumes: # Traefik must be able to listen for Docker events - /var/run/docker.sock:/var/run/docker.sock