145 lines
5.8 KiB
Plaintext
145 lines
5.8 KiB
Plaintext
# Complete Nginx Configuration Example
|
|
# สำหรับ Nginx Proxy Manager - Custom Nginx Configuration
|
|
#
|
|
# วิธีใช้:
|
|
# 1. ไปที่ Nginx Proxy Manager UI (http://your-server:8021)
|
|
# 2. สร้าง Proxy Host ใหม่
|
|
# 3. กรอก Domain Names: ai.sriphat.com (หรือ domain ของคุณ)
|
|
# 4. กรอก Forward Hostname/IP: localhost (dummy, จะใช้ config ด้านล่าง)
|
|
# 5. กรอก Forward Port: 80 (dummy)
|
|
# 6. ไปที่ tab "Advanced"
|
|
# 7. Copy config ด้านล่างนี้ทั้งหมดไปวางใน "Custom Nginx Configuration"
|
|
# 8. กด Save
|
|
|
|
# ============================================================================
|
|
# API Service - FastAPI with Keycloak
|
|
# ============================================================================
|
|
location /apiservice {
|
|
rewrite ^/apiservice(/.*)$ $1 break;
|
|
proxy_pass http://apiservice:8000;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
proxy_set_header X-Forwarded-Host $host;
|
|
proxy_set_header X-Script-Name /apiservice;
|
|
proxy_cookie_path / /apiservice/;
|
|
proxy_http_version 1.1;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
proxy_buffering off;
|
|
}
|
|
|
|
# ============================================================================
|
|
# Supabase Studio - Database Management UI
|
|
# ============================================================================
|
|
location /supabase {
|
|
rewrite ^/supabase(/.*)$ $1 break;
|
|
proxy_pass http://sdp-studio:3000;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
proxy_http_version 1.1;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
proxy_buffering off;
|
|
}
|
|
|
|
# ============================================================================
|
|
# Supabase Kong API - REST API Gateway
|
|
# ============================================================================
|
|
location /supabase-api {
|
|
rewrite ^/supabase-api(/.*)$ $1 break;
|
|
proxy_pass http://sdp-kong:8000;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
proxy_set_header Authorization $http_authorization;
|
|
proxy_set_header apikey $http_apikey;
|
|
proxy_buffering off;
|
|
}
|
|
|
|
# ============================================================================
|
|
# Keycloak - Single Sign-On (SSO)
|
|
# ============================================================================
|
|
location /keycloak {
|
|
rewrite ^/keycloak(/.*)$ $1 break;
|
|
proxy_pass http://keycloak:8080;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
proxy_set_header X-Forwarded-Prefix /keycloak;
|
|
proxy_cookie_path / /keycloak/;
|
|
proxy_buffer_size 128k;
|
|
proxy_buffers 4 256k;
|
|
proxy_busy_buffers_size 256k;
|
|
}
|
|
|
|
# ============================================================================
|
|
# Apache Superset - Business Intelligence
|
|
# ============================================================================
|
|
location /superset {
|
|
rewrite ^/superset(/.*)$ $1 break;
|
|
proxy_pass http://superset:8088;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
proxy_set_header X-Script-Name /superset;
|
|
proxy_cookie_path / /superset/;
|
|
proxy_http_version 1.1;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
proxy_connect_timeout 300s;
|
|
proxy_send_timeout 300s;
|
|
proxy_read_timeout 300s;
|
|
}
|
|
|
|
# ============================================================================
|
|
# Apache Airflow - Workflow Orchestration (Optional)
|
|
# ============================================================================
|
|
location /airflow {
|
|
rewrite ^/airflow(/.*)$ $1 break;
|
|
proxy_pass http://airflow-webserver:8080;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
proxy_set_header X-Script-Name /airflow;
|
|
proxy_cookie_path / /airflow/;
|
|
proxy_http_version 1.1;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
}
|
|
|
|
# ============================================================================
|
|
# DBT Documentation (Optional)
|
|
# ============================================================================
|
|
location /dbt {
|
|
rewrite ^/dbt(/.*)$ $1 break;
|
|
proxy_pass http://dbt-docs:8080;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
}
|
|
|
|
# ============================================================================
|
|
# Dozzle - Docker Log Viewer & Monitoring
|
|
# ============================================================================
|
|
location /dozzle {
|
|
proxy_pass http://dozzle:8080;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
proxy_http_version 1.1;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
proxy_buffering off;
|
|
proxy_read_timeout 300s;
|
|
}
|