networks: default: volumes: keycloak_data: services: traefik: container_name: neah-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 networks: - default front: container_name: neah-front build: context: ./front dockerfile: Dockerfile environment: - NODE_ENV=production labels: - "traefik.enable=true" - "traefik.http.routers.neah-front.rule=Host(`${MAIN_DOMAIN}`)" - "traefik.http.services.neah-front.loadbalancer.server.port=3000" extra_hosts: - "${KEYCLOAK_HOST}.${MAIN_DOMAIN}:${KEYCLOAK_HOST_IP}" networks: - default keycloak: container_name: neah-keycloak image: quay.io/keycloak/keycloak:latest # TODO: Passer a "start" lors de la production command: ["start-dev"] environment: KC_BOOTSTRAP_ADMIN_USERNAME: ${KEYCLOAK_USER} KC_BOOTSTRAP_ADMIN_PASSWORD: ${KEYCLOAK_PASSWORD} labels: - "traefik.enable=true" - "traefik.http.routers.neah-keycloak.rule=Host(`${KEYCLOAK_HOST}.${MAIN_DOMAIN}`)" - "traefik.http.services.neah-keycloak.loadbalancer.server.port=8080" volumes: - keycloak_data:/opt/keycloak/data ports: - "8090:8080" networks: - default