version: "3.4"

services:
  saleor:
    image: saleor
    build:
      context: ..
      dockerfile: .devcontainer/Dockerfile
    command: /bin/sh -c "while sleep 1000; do :; done"
    env_file:
      - common.env
      - backend.env
    depends_on:
      - db
      - redis
    volumes:
      - ..:/app

  dashboard:
    image: ghcr.io/saleor/saleor-dashboard:3.15.2
    restart: unless-stopped
    ports:
      - 9000:80

  db:
    image: library/postgres:13-alpine
    restart: unless-stopped
    volumes:
      - saleor-db:/var/lib/postgresql/data
    environment:
      - POSTGRES_USER=saleor
      - POSTGRES_PASSWORD=saleor

  redis:
    image: library/redis:7.0-alpine
    restart: unless-stopped
    volumes:
      - saleor-redis:/data

  mailpit:
    image: axllent/mailpit
    ports:
      - "1025" # SMTP Server
      - "8025" # Mailpit UI
    restart: unless-stopped

volumes:
  saleor-db:
    driver: local
  saleor-redis:
    driver: local