2026-07-09 22:08:26 +07:00
|
|
|
http:
|
|
|
|
|
routers:
|
2026-07-23 06:44:48 +07:00
|
|
|
# ── Hub (Portfolio SPA) ──
|
|
|
|
|
hub:
|
2026-07-23 06:48:11 +07:00
|
|
|
rule: 'Host(`asepharyana.my.id`) || Host(`www.asepharyana.my.id`) || Host(`asepharyana.web.id`) || Host(`www.asepharyana.web.id`)'
|
2026-07-23 06:44:48 +07:00
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
tls: {}
|
|
|
|
|
middlewares:
|
|
|
|
|
- common-chain@file
|
|
|
|
|
service: hub-service
|
|
|
|
|
|
2026-07-09 22:08:26 +07:00
|
|
|
# ── Scraper API ──
|
|
|
|
|
scraper:
|
|
|
|
|
rule: 'Host(`scraper.asepharyana.my.id`) || Host(`api.asepharyana.my.id`) || Host(`scraper.asepharyana.web.id`) || Host(`api.asepharyana.web.id`)'
|
|
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
tls: {}
|
|
|
|
|
middlewares:
|
|
|
|
|
- common-chain@file
|
|
|
|
|
service: scraper-service
|
|
|
|
|
|
2026-07-25 11:20:15 +07:00
|
|
|
# ── LLM API (MiniCPM-V) ──
|
|
|
|
|
llm-api:
|
2026-07-25 13:39:35 +07:00
|
|
|
rule: 'Host(`ai.asepharyana.my.id`) || Host(`ai.asepharyana.web.id`)'
|
2026-07-25 11:20:15 +07:00
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
tls: {}
|
|
|
|
|
middlewares:
|
2026-07-26 19:14:52 +07:00
|
|
|
- llm-chain@file
|
2026-07-25 11:20:15 +07:00
|
|
|
service: llm-api-service
|
|
|
|
|
|
2026-07-24 13:08:09 +07:00
|
|
|
# ── Tools (Document Scanner & Media Processing) ──
|
|
|
|
|
tools:
|
|
|
|
|
rule: 'Host(`tools.asepharyana.my.id`) || Host(`tools.asepharyana.web.id`)'
|
|
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
tls: {}
|
|
|
|
|
middlewares:
|
|
|
|
|
- common-chain@file
|
|
|
|
|
service: tools-service
|
|
|
|
|
|
2026-07-22 16:43:37 +07:00
|
|
|
# ── Jaeger UI ──
|
|
|
|
|
jaeger:
|
|
|
|
|
rule: 'Host(`jaeger.asepharyana.my.id`) || Host(`jaeger.asepharyana.web.id`)'
|
|
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
tls: {}
|
|
|
|
|
middlewares:
|
|
|
|
|
- common-chain@file
|
|
|
|
|
service: jaeger-service
|
|
|
|
|
|
2026-07-31 11:29:32 +07:00
|
|
|
# ── 9Router (AI routing gateway) ──
|
|
|
|
|
9router:
|
|
|
|
|
rule: 'Host(`9router.asepharyana.my.id`)'
|
|
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
tls: {}
|
|
|
|
|
middlewares:
|
|
|
|
|
- common-chain@file
|
|
|
|
|
service: 9router-service
|
|
|
|
|
|
|
|
|
|
# ── PR-Agent (GitHub App webhook) ──
|
|
|
|
|
pr-agent:
|
|
|
|
|
rule: 'Host(`pr-agent.asepharyana.my.id`)'
|
|
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
tls: {}
|
|
|
|
|
middlewares:
|
|
|
|
|
- common-chain@file
|
|
|
|
|
service: pr-agent-service
|
|
|
|
|
|
|
|
|
|
# ── LIDM Frontend ──
|
|
|
|
|
lidm-frontend:
|
|
|
|
|
rule: 'Host(`lidm.asepharyana.my.id`)'
|
|
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
tls: {}
|
|
|
|
|
middlewares:
|
|
|
|
|
- common-chain@file
|
|
|
|
|
service: lidm-frontend-service
|
|
|
|
|
|
|
|
|
|
# ── LIDM Backend API ──
|
|
|
|
|
lidm-backend:
|
|
|
|
|
rule: 'Host(`lidm-api.asepharyana.my.id`)'
|
|
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
tls: {}
|
|
|
|
|
middlewares:
|
|
|
|
|
- common-chain@file
|
|
|
|
|
service: lidm-backend-service
|
|
|
|
|
|
2026-07-31 12:42:14 +07:00
|
|
|
# ── ZeaVis Edu Frontend ──
|
|
|
|
|
zeavisedu:
|
|
|
|
|
rule: 'Host(`zeavisedu.asepharyana.my.id`)'
|
|
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
tls: {}
|
|
|
|
|
middlewares:
|
|
|
|
|
- common-chain@file
|
|
|
|
|
service: zeavisedu-service
|
|
|
|
|
|
|
|
|
|
# ── ZeaVis Edu API ──
|
|
|
|
|
api-zeavisedu:
|
|
|
|
|
rule: 'Host(`api-zeavisedu.asepharyana.my.id`)'
|
|
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
tls: {}
|
|
|
|
|
middlewares:
|
|
|
|
|
- common-chain@file
|
|
|
|
|
service: api-zeavisedu-service
|
|
|
|
|
|
|
|
|
|
# ── ZeaVis Edu ML Service ──
|
|
|
|
|
ml-zeavisedu:
|
|
|
|
|
rule: 'Host(`ml-zeavisedu.asepharyana.my.id`)'
|
|
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
tls: {}
|
|
|
|
|
middlewares:
|
|
|
|
|
- common-chain@file
|
|
|
|
|
service: ml-zeavisedu-service
|
|
|
|
|
|
2026-07-31 13:50:46 +07:00
|
|
|
# ── Hermes Dashboard ──
|
|
|
|
|
hermes-dashboard:
|
|
|
|
|
rule: 'Host(`dashboard.asepharyana.my.id`)'
|
|
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
tls: {}
|
|
|
|
|
middlewares:
|
|
|
|
|
- common-chain@file
|
|
|
|
|
service: hermes-dashboard-service
|
|
|
|
|
|
2026-08-01 12:34:22 +07:00
|
|
|
# ── GMW Discord Automod Dashboard (Nix: gmw-proxy on 8080) ──
|
|
|
|
|
gmw:
|
|
|
|
|
rule: 'Host(`imphnen.asepharyana.my.id`)'
|
|
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
tls: {}
|
|
|
|
|
middlewares:
|
|
|
|
|
- common-chain@file
|
|
|
|
|
service: gmw-service
|
|
|
|
|
|
|
|
|
|
# ── TeleUploader (S3 to Telegram Bridge, Nix: bun on 3000) ──
|
|
|
|
|
teleuploader:
|
|
|
|
|
rule: 'Host(`upload.asepharyana.my.id`) || Host(`upload.asepharyana.web.id`)'
|
|
|
|
|
entryPoints:
|
|
|
|
|
- websecure
|
|
|
|
|
tls: {}
|
|
|
|
|
middlewares:
|
|
|
|
|
- upload-chain@file
|
|
|
|
|
service: teleuploader-service
|
|
|
|
|
|
2026-07-23 19:02:06 +07:00
|
|
|
services:
|
2026-07-23 19:07:22 +07:00
|
|
|
hub-service:
|
|
|
|
|
loadBalancer:
|
|
|
|
|
servers:
|
2026-07-30 18:33:43 +07:00
|
|
|
- url: 'http://host.docker.internal:3099'
|
2026-07-23 19:07:22 +07:00
|
|
|
|
|
|
|
|
scraper-service:
|
|
|
|
|
loadBalancer:
|
|
|
|
|
servers:
|
2026-07-30 18:46:45 +07:00
|
|
|
- url: 'http://host.docker.internal:4091'
|
2026-07-23 19:07:22 +07:00
|
|
|
|
2026-07-24 13:08:09 +07:00
|
|
|
tools-service:
|
|
|
|
|
loadBalancer:
|
|
|
|
|
servers:
|
2026-07-30 19:45:43 +07:00
|
|
|
- url: 'http://host.docker.internal:3500'
|
2026-07-24 13:08:09 +07:00
|
|
|
|
2026-07-25 11:20:15 +07:00
|
|
|
llm-api-service:
|
|
|
|
|
loadBalancer:
|
|
|
|
|
servers:
|
2026-07-30 22:18:56 +07:00
|
|
|
- url: 'http://host.docker.internal:8082'
|
2026-07-25 11:20:15 +07:00
|
|
|
|
2026-07-23 19:07:22 +07:00
|
|
|
jaeger-service:
|
|
|
|
|
loadBalancer:
|
|
|
|
|
servers:
|
|
|
|
|
- url: 'http://jaeger:16686'
|
2026-07-31 11:29:32 +07:00
|
|
|
|
|
|
|
|
9router-service:
|
|
|
|
|
loadBalancer:
|
|
|
|
|
servers:
|
|
|
|
|
- url: 'http://host.docker.internal:20128'
|
|
|
|
|
|
|
|
|
|
pr-agent-service:
|
|
|
|
|
loadBalancer:
|
|
|
|
|
servers:
|
|
|
|
|
- url: 'http://host.docker.internal:3002'
|
|
|
|
|
|
|
|
|
|
lidm-frontend-service:
|
|
|
|
|
loadBalancer:
|
|
|
|
|
servers:
|
2026-07-31 11:37:13 +07:00
|
|
|
- url: 'http://host.docker.internal:3100'
|
2026-07-31 11:29:32 +07:00
|
|
|
|
|
|
|
|
lidm-backend-service:
|
|
|
|
|
loadBalancer:
|
|
|
|
|
servers:
|
2026-07-31 11:37:13 +07:00
|
|
|
- url: 'http://host.docker.internal:3101'
|
2026-07-31 12:42:14 +07:00
|
|
|
|
|
|
|
|
zeavisedu-service:
|
|
|
|
|
loadBalancer:
|
|
|
|
|
servers:
|
|
|
|
|
- url: 'http://host.docker.internal:8088'
|
|
|
|
|
|
|
|
|
|
api-zeavisedu-service:
|
|
|
|
|
loadBalancer:
|
|
|
|
|
servers:
|
|
|
|
|
- url: 'http://host.docker.internal:3200'
|
|
|
|
|
|
|
|
|
|
ml-zeavisedu-service:
|
|
|
|
|
loadBalancer:
|
|
|
|
|
servers:
|
|
|
|
|
- url: 'http://host.docker.internal:8200'
|
2026-07-31 13:50:46 +07:00
|
|
|
|
|
|
|
|
hermes-dashboard-service:
|
|
|
|
|
loadBalancer:
|
|
|
|
|
servers:
|
|
|
|
|
- url: 'http://host.docker.internal:9119'
|
2026-08-01 12:34:22 +07:00
|
|
|
|
|
|
|
|
gmw-service:
|
|
|
|
|
loadBalancer:
|
|
|
|
|
servers:
|
|
|
|
|
- url: 'http://host.docker.internal:8080'
|
|
|
|
|
|
|
|
|
|
teleuploader-service:
|
|
|
|
|
loadBalancer:
|
|
|
|
|
servers:
|
|
|
|
|
- url: 'http://host.docker.internal:3000'
|