services:

  # aquatic:
    # build:
    #   context: ./apps/aquatic
    #   dockerfile: docker/aquatic_udp_futureporn.Dockerfile
    # ports:
    #   - "6969:6969/udp"
    #   - "9000:9000/tcp"


  # bright:
  #   container_name: bright
  #   build:
  #     context: .
  #     dockerfile: dockerfiles/bright.dockerfile
  #     target: dev
  #     args:
  #     - MIX_ENV=dev
  #   environment:
  #     MIX_ENV: dev
  #     PORT: "4000"
  #     DATABASE_HOSTNAME: db
  #     SUPERSTREAMER_URL: http://superstreamer-api:52001
  #     PUBLIC_S3_ENDPOINT: https://fp-dev.b-cdn.net
  #     BT_TRACKER_URL: udp://tracker.futureporn.net
  #     BT_TRACKER_ACCESSLIST_URL: http://opentracker:8666
  #     SITE_URL: https://futureporn.net
  #   env_file:
  #     - .kamal/secrets.development
  #   ports:
  #     - '4000:4000'
  #   depends_on:
  #     - db
  #   # volumes:
  #   #   - cache:/root/.cache/futureporn
  #   #   - ./services/bright/lib:/app/lib
  #   #   - /home/cj/Documents/ueberauth_patreon:/app/contrib/ueberauth_patreon
  #   develop:
  #     watch:
  #       - path: ./services/bright/
  #         target: /app/
  #         action: sync
  #       - path: ./services/bright/application.ex
  #         target: /app/lib/bright/application.ex
  #         action: sync+restart
  #       - path: ./services/bright/config/config.exs
  #         target: /app/lib/bright/config/config.exs
  #         action: sync+restart
  #       - path: ./services/bright/config/runtime.exs
  #         target: /app/lib/bright/config/runtime.exs
  #         action: sync+restart
  #       # @todo we need "docker@27.5.0" in devbox.json because we need docker compose >= `v2.32.0` for `sync+exec` feature.
  #       #       For now, we don't have `sync+exec` support which means docker image rebuilds are required when updating mix.exs
  #       # - path: ./services/bright/mix.exs
  #       #   action: sync+exec
  #       #   target: /app/mix.exs
  #       #   exec:
  #       #     command: mix deps.get
  #       - path: ./services/bright/mix.exs
  #         target: /app/mix.exs
  #         action: sync+restart
  #       # - path: /home/cj/Documents/ueberauth_patreon
  #       #   action: sync
  #       #   target: /app/contrib/ueberauth_patreon


  db:
    image: postgres:15
    container_name: db
    environment:
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: password
      POSTGRES_DB: bright
    volumes:
      - pg_data:/var/lib/postgresql/data
    ports:
      - '5432:5432'

  pgadmin:
    container_name: pgadmin
    image: dpage/pgadmin4
    ports:
      - '5050:5050'
    depends_on:
      - db
    environment:
      PGADMIN_LISTEN_PORT: "5050"
      PGADMIN_DISABLE_POSTFIX: "1"
      PGADMIN_DEFAULT_EMAIL: cj@futureporn.net
      PGADMIN_DEFAULT_PASSWORD: "password"
    env_file:
      - .kamal/secrets.development

volumes:
  pg_data:
  cache: