version: "3.4" services: api: image: ghcr.io/saleor/saleor:3.18 ports: - 8000:8000 restart: unless-stopped networks: - saleor-backend-tier stdin_open: true tty: true depends_on: - db - redis - jaeger volumes: # shared volume between worker and api for media - saleor-media:/app/media env_file: - common.env - backend.env environment: - JAEGER_AGENT_HOST=jaeger - DASHBOARD_URL=http://localhost:9000/ - ALLOWED_HOSTS=192.168.0.235,localhost,api dashboard: image: ghcr.io/saleor/saleor-dashboard:latest ports: - 9000:80 restart: unless-stopped db: image: library/postgres:13-alpine ports: - 5432:5432 restart: unless-stopped networks: - saleor-backend-tier volumes: - saleor-db:/var/lib/postgresql/data - ./replica_user.sql:/docker-entrypoint-initdb.d/replica_user.sql environment: - POSTGRES_USER=saleor - POSTGRES_PASSWORD=saleor redis: image: library/redis:7.0-alpine ports: - 6379:6379 restart: unless-stopped networks: - saleor-backend-tier volumes: - saleor-redis:/data worker: image: ghcr.io/saleor/saleor:3.18 command: celery -A saleor --app=saleor.celeryconf:app worker --loglevel=info -B restart: unless-stopped networks: - saleor-backend-tier env_file: - common.env - backend.env depends_on: - redis - mailpit volumes: # shared volume between worker and api for media - saleor-media:/app/media jaeger: image: jaegertracing/all-in-one ports: - "5775:5775/udp" - "6831:6831/udp" - "6832:6832/udp" - "5778:5778" - "16686:16686" - "14268:14268" - "9411:9411" restart: unless-stopped networks: - saleor-backend-tier mailpit: image: axllent/mailpit ports: - 1025:1025 # smtp server - 8025:8025 # web ui. Visit http://localhost:8025/ to check emails restart: unless-stopped networks: - saleor-backend-tier volumes: saleor-db: driver: local saleor-redis: driver: local saleor-media: networks: saleor-backend-tier: driver: bridge