version: '3.8' services: rabbitmq: container_name: rabbitmq image: rabbitmq:management-alpine healthcheck: test: rabbitmq-diagnostics -q ping interval: 30s timeout: 30s retries: 3 networks: - eshoponabp-network mongodb: container_name: mongodb image: mongo:4.2 volumes: - mongodb_data:/data/db healthcheck: test: echo 'db.stats().ok' | mongo localhost:27017/test --quiet interval: 10s timeout: 10s retries: 10 networks: - eshoponabp-network mongo-express: image: mongo-express container_name: mongo-express depends_on: - mongodb restart: unless-stopped healthcheck: test: wget --quiet --tries=3 --spider http://admin:admin123@mongo-express:8081 || exit 1 interval: 30s timeout: 10s retries: 3 networks: - eshoponabp-network redis: container_name: redis image: redis:alpine volumes: - redis_data:/data healthcheck: test: ["CMD", "redis-cli","ping"] networks: - eshoponabp-network postgres-db: container_name: postgres-db image: postgres:14.1 volumes: - postgres_data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U postgres"] interval: 10s timeout: 5s retries: 5 networks: - eshoponabp-network pgadmin: container_name: pgadmin image: dpage/pgadmin4:6.2 volumes: - pgadmin_data:/var/lib/pgadmin networks: - eshoponabp-network keycloak: container_name: keycloak image: quay.io/keycloak/keycloak:19.0.2 depends_on: - postgres-db restart: unless-stopped networks: - eshoponabp-network volumes: postgres_data: pgadmin_data: mongodb_data: redis_data: networks: eshoponabp-network: external: true