- 01-infra/nginx-configs: add MinIO /minio/ and /minio-console/ location blocks (port 9000 S3 API, port 9001 Console UI, path stripping via rewrite) - 03-apiservice: integrate MinIO minio-python SDK for file upload - requirements.txt: add minio==7.2.11 - app/core/config.py: add MINIO_ENDPOINT, ACCESS_KEY, SECRET_KEY, BUCKET_FINANCE, USE_SSL - app/services/minio_client.py: new — upload_file(), get_presigned_url(), delete_file() - app/routes/pages.py: replace local /data/uploads/ write with MinIO upload to finance bucket - docker-compose.yml: pass MinIO env vars to container - .env.example: document MinIO vars - 07-minio/.env.example: add MINIO_SVC_ACCESS_KEY/SECRET_KEY section - 07-minio/README.md: add Python minio SDK and Airflow DAG usage guide - CLAUDE.md: project context (servers, SSH, paths, service distribution) - document-obsidiant/: initial Obsidian docs for all services
58 lines
1.6 KiB
Plaintext
58 lines
1.6 KiB
Plaintext
# Application
|
|
APP_NAME=APIsService
|
|
ROOT_PATH=/apiservice
|
|
|
|
# Timezone
|
|
TIMEZONE=Asia/Bangkok
|
|
|
|
# PostgreSQL Database (for ApiClient, ApiKey, RawWaitingTime tables)
|
|
DB_HOST=postgres
|
|
DB_PORT=5432
|
|
DB_USER=postgres
|
|
DB_PASSWORD=your-postgres-password
|
|
DB_NAME=postgres
|
|
DB_SSLMODE=prefer
|
|
|
|
# Supabase Database (for RawOpdCheckpoint table)
|
|
SUPABASE_DB_HOST=sdp-db
|
|
SUPABASE_DB_PORT=5432
|
|
SUPABASE_DB_USER=postgres.1
|
|
SUPABASE_DB_PASSWORD=your-supabase-password
|
|
SUPABASE_DB_NAME=postgres
|
|
SUPABASE_DB_SSLMODE=disable
|
|
|
|
# Supabase API (for REST API calls)
|
|
SUPABASE_API_URL=http://sdp-kong:8000
|
|
SUPABASE_API_KEY=your-supabase-anon-or-service-role-key
|
|
|
|
# Admin Authentication
|
|
ADMIN_SECRET_KEY=your-secret-key-here
|
|
ADMIN_USERNAME=admin
|
|
ADMIN_PASSWORD=your-admin-password
|
|
|
|
# API Key Encryption (for storing encrypted keys in DB)
|
|
API_KEY_ENC_SECRET=your-encryption-secret-key-here
|
|
|
|
# Debug settings (set to true for detailed logging, false for production)
|
|
DEBUG_AUTH=false
|
|
|
|
# Keycloak Authentication (for web pages)
|
|
KEYCLOAK_SERVER_URL=http://keycloak:8080
|
|
KEYCLOAK_REALM=master
|
|
KEYCLOAK_CLIENT_ID=apiservice
|
|
KEYCLOAK_CLIENT_SECRET=your-keycloak-client-secret
|
|
KEYCLOAK_REDIRECT_URI=http://localhost:8040/apiservice/auth/callback
|
|
|
|
# Airflow Integration
|
|
AIRFLOW_API_URL=http://airflow-webserver:8080
|
|
AIRFLOW_API_TOKEN=your-airflow-api-token
|
|
AIRFLOW_DAG_ID_FINANCE=process_finance_excel
|
|
|
|
# MinIO Object Storage (server 2: 192.168.100.9)
|
|
# ใช้ service account sp_service_ac (ไม่ใช้ root credentials)
|
|
MINIO_ENDPOINT=192.168.100.9:9000
|
|
MINIO_SVC_ACCESS_KEY=sp_service_ac
|
|
MINIO_SVC_SECRET_KEY=your-minio-service-account-secret
|
|
MINIO_BUCKET_FINANCE=finance
|
|
MINIO_USE_SSL=false
|