version: '3'
services:
  postgres:
    image: postgres:15
    restart: unless-stopped
    environment:
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=postgres
      - POSTGRES_DATABASE=postgres
    volumes:
      - pg_data:/var/lib/postgresql/data
    healthcheck:
      test: ['CMD-SHELL', 'pg_isready -U postgres']
      interval: 10s
      timeout: 5s
      retries: 5

  zipline:
    image: ghcr.io/diced/zipline
    ports:
      - '3000:3000'
    restart: unless-stopped
    environment:
      - CORE_RETURN_HTTPS=false
      - CORE_SECRET=changethis
      - CORE_HOST=0.0.0.0
      - CORE_PORT=3000
      - CORE_DATABASE_URL=postgres://postgres:postgres@postgres/postgres
      - CORE_LOGGER=true
    volumes:
      - './uploads:/zipline/uploads'
      - './public:/zipline/public'
    depends_on:
      - 'postgres'

volumes:
  pg_data:
