services:
  endurain:
    container_name: endurain-app
    image: ghcr.io/joaovitoriasilva/endurain:latest
    env_file:
      - .env
    volumes:
    #  - <local_path>/endurain/backend/app:/app/backend # Configure volume if you want to edit the code locally by cloning the repo
      - <local_path>/endurain/backend/data:/app/backend/data # necessary for activity files, user images and server images persistence on container image updates
      - <local_path>/endurain/backend/logs:/app/backend/logs # log files for the backend
    ports:
      - "8080:8080"
    depends_on:
      postgres:
        condition: service_healthy
    restart: unless-stopped

   # postgres logic
  postgres:
    image: docker.io/postgres:17.5
    container_name: endurain-postgres
    env_file:
      - .env
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U endurain"]
      interval: 5s
      timeout: 5s
      retries: 5
    volumes:
      - <local_path>/endurain/postgres:/var/lib/postgresql/data
    restart: unless-stopped
