services:
  web:
    platform: "linux/amd64"
    build:
      context: .
      dockerfile: Dockerfile
      args:
        INTERNAL_BASE_URL: http://web:3000
        POSTGRES_USER: ${POSTGRES_USER}
        POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
        POSTGRES_DB: ${POSTGRES_DB}
        PGHOST: db
        PGPORT: "5432"
        BACKENDSERVER_URL: http://backend:1323
        TILES_URL: tiles:6379
        KEYDB_URL: keydb:6379
        BASE_URL: ${BASE_URL}
        SENDGRID_API_KEY: ${SENDGRID_API_KEY}
        STRIPE_SECRET_KEY: ${STRIPE_SECRET_KEY}
        NEXT_PUBLIC_STRIPE_PUBLIC_KEY: ${NEXT_PUBLIC_STRIPE_PUBLIC_KEY}
        STRIPE_LIMITED_KEY: ${STRIPE_LIMITED_KEY}
        STRIPE_WEBHOOK_SECRET: ${STRIPE_WEBHOOK_SECRET}
        FIC_CLIENT_ID: ${FIC_CLIENT_ID}
        FIC_ACCESS_TOKEN: ${FIC_ACCESS_TOKEN}
        FIC_COMPANY_ID: ${FIC_COMPANY_ID}
        ARUBA_USER: ${ARUBA_USER}
        ARUBA_PASS: ${ARUBA_PASS}
        EXP_API_USER: ${EXP_API_USER}
        EXP_API_PASS: ${EXP_API_PASS}
        JWT_SECRET: ${JWT_SECRET}
    working_dir: /app
    environment:
      INTERNAL_BASE_URL: http://web:3000
      POSTGRES_USER: ${POSTGRES_USER}
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
      POSTGRES_DB: ${POSTGRES_DB}
      PGHOST: db
      PGPORT: "5432"
      BACKENDSERVER_URL: http://backend:1323
      KEYDB_URL: keydb:6379
      TILES_URL: tiles:6379
      BASE_URL: ${BASE_URL}
      SENDGRID_API_KEY: ${SENDGRID_API_KEY}
      STRIPE_SECRET_KEY: ${STRIPE_SECRET_KEY}
      NEXT_PUBLIC_STRIPE_PUBLIC_KEY: ${NEXT_PUBLIC_STRIPE_PUBLIC_KEY}
      STRIPE_LIMITED_KEY: ${STRIPE_LIMITED_KEY}
      STRIPE_WEBHOOK_SECRET: ${STRIPE_WEBHOOK_SECRET}
      FIC_CLIENT_ID: ${FIC_CLIENT_ID}
      FIC_ACCESS_TOKEN: ${FIC_ACCESS_TOKEN}
      FIC_COMPANY_ID: ${FIC_COMPANY_ID}
      ARUBA_USER: ${ARUBA_USER}
      ARUBA_PASS: ${ARUBA_PASS}
      EXP_API_USER: ${EXP_API_USER}
      EXP_API_PASS: ${EXP_API_PASS}
      JWT_SECRET: ${JWT_SECRET}
    networks:
      - dokploy-network
    ports:
      - "3000"

networks:
  dokploy-network:
    external: true
