Commit Graph
90 Commits
Author SHA1 Message Date
Asep Haryana 5d21848e87 perf(infra): traefik response speed - HTTP/3 + backend conn pooling
- entryPoints.websecure.http3: enable QUIC (UDP 443, alt-svc h3)
- serversTransport maxIdleConnsPerHost 2->100: reuse backend keep-alive
- forwardingTimeouts.dialTimeout 30s->3s: fail fast on dead backends
- disable version-check/anonymous-usage network chatter
2026-08-01 13:12:50 +07:00
Asep Haryana 80b5161630 ci(infra): traefik dynamic config path -> /home/code (drop /root dependency) 2026-07-31 14:02:07 +07:00
Asep Haryana d0c9f16d5d chore(infra): disable Docker compose for Nix-migrated services (hub, scraper, tools, llm-api) 2026-07-30 22:29:20 +07:00
GitHub Action d6b9a0806b chore: update manifests and submodules [skip ci] 2026-07-30 15:23:34 +00:00
GitHub Action 32049c70ac chore: update manifests and submodules [skip ci] 2026-07-26 12:18:15 +00:00
GitHub Action f0c7534152 chore: update manifests and submodules [skip ci] 2026-07-26 12:09:58 +00:00
GitHub Action e42e967b7f chore: update manifests and submodules [skip ci] 2026-07-26 11:27:08 +00:00
GitHub Action 87df0d7ae2 chore: update manifests and submodules [skip ci] 2026-07-26 10:15:32 +00:00
GitHub Action 2913f515f0 chore: update manifests and submodules [skip ci] 2026-07-26 09:14:25 +00:00
GitHub Action 59e2f9d173 chore: update manifests and submodules [skip ci] 2026-07-26 09:08:26 +00:00
GitHub Action d75424634d chore: update manifests and submodules [skip ci] 2026-07-26 08:58:06 +00:00
GitHub Action cc8cefb33a chore: update manifests and submodules [skip ci] 2026-07-26 08:53:27 +00:00
GitHub Action ca81a8b7ee chore: update manifests and submodules [skip ci] 2026-07-26 08:44:28 +00:00
GitHub Action ac25a51113 chore: update manifests and submodules [skip ci] 2026-07-26 08:42:08 +00:00
asepharyanaandGitHub 10aeda4d4b fix: update llm-api MODEL_PATH for new MiniCPM5 GGUF
Updates MODEL_PATH to MiniCPM5-1B-Claude-Opus-Fable5-V2-Thinking-Q8_0.gguf
2026-07-26 15:40:14 +07:00
GitHub Action 1e4b17afb0 chore: update manifests and submodules [skip ci] 2026-07-25 12:06:23 +00:00
GitHub Action fde53f22b6 chore: update manifests and submodules [skip ci] 2026-07-25 06:45:09 +00:00
GitHub Action 2033d9b2bc chore: update manifests and submodules [skip ci] 2026-07-25 04:22:20 +00:00
asepharyana 8fc4a15e0c feat(llm-api): add MiniCPM-V LLM API service with Traefik routing 2026-07-25 11:20:15 +07:00
GitHub Action 4fbca91c8c chore: update manifests and submodules [skip ci] 2026-07-24 12:59:04 +00:00
GitHub Action c4791b3160 chore: update manifests and submodules [skip ci] 2026-07-24 12:08:26 +00:00
GitHub Action 6f1dfea710 chore: update manifests and submodules [skip ci] 2026-07-24 11:54:28 +00:00
asepharyanaandKilo 3c52036f7e fix(infra): replace curl healthcheck with wget, install wget in runtime
Co-Authored-By: Kilo <kilo@kilo.ai>
2026-07-24 18:52:40 +07:00
GitHub Action e10a2e498b chore: update manifests and submodules [skip ci] 2026-07-24 11:50:52 +00:00
GitHub Action 183659b56c chore: update manifests and submodules [skip ci] 2026-07-24 11:50:03 +00:00
GitHub Action f92aa8ef30 chore: update manifests and submodules [skip ci] 2026-07-24 10:58:20 +00:00
GitHub Action 4be55b57bb chore: update manifests and submodules [skip ci] 2026-07-24 10:57:26 +00:00
GitHub Action 13e2c38eef chore: update manifests and submodules [skip ci] 2026-07-24 10:53:19 +00:00
GitHub Action d2f592261e chore: update manifests and submodules [skip ci] 2026-07-24 10:48:34 +00:00
GitHub Action 70f54c8c7a chore: update manifests and submodules [skip ci] 2026-07-24 10:47:39 +00:00
asepharyanaandKilo a35e19b546 fix(infra): update tools submodule entrypoint, use port 3002
Entrypoint now auto-discovers binary locations in various paths.
Host port changed to 3002 due to stale iptables rule on port 3001.

Co-Authored-By: Kilo <kilo@kilo.ai>
2026-07-24 17:47:24 +07:00
asepharyanaandKilo 97b48ddb21 fix(infra): remove depends_on redis/nats from tools.yml
Shared services are in separate compose files. Tools depends on them
at runtime but Docker compose doesn't need to manage their lifecycle.

Co-Authored-By: Kilo <kilo@kilo.ai>
2026-07-24 17:40:35 +07:00
GitHub Action ab994ffd54 chore: update manifests and submodules [skip ci] 2026-07-24 07:17:21 +00:00
GitHub Action 9d0b075b92 chore: update manifests and submodules [skip ci] 2026-07-24 07:16:37 +00:00
asepharyanaandKilo 67288c8723 feat(infra): add tools service with document scanner, image & PDF tools
Implement self-hosted document scanner and media processing tools as
an alternative to CamScanner/ilovepdf without third-party uploads.

Backend: Rust Axum gateway + worker pool with NATS JetStream queue
Frontend: Next.js 16 + shadcn/ui + Tailwind v4 + Framer Motion
Pipeline: Canny edge detection -> DLT homography warp -> Sauvola
binarization -> Hough deskew -> Tesseract OCR -> searchable PDF

Phase 1 (MVP) delivers:
- Document scanner with perspective correction and OCR
- Image compress/resize/convert tools
- PDF merge/split/compress tools
- Real-time WebSocket progress updates
- Rate limiting, auto-cleanup, Prometheus metrics
- Full CI/CD pipeline with Docker multi-stage build

Co-Authored-By: Kilo <kilo@kilo.ai>
2026-07-24 13:08:09 +07:00
GitHub Action 447b22d9da chore: update manifests and submodules [skip ci] 2026-07-24 02:11:27 +00:00
GitHub Action df7aaedfba chore: update manifests and submodules [skip ci] 2026-07-23 11:17:49 +00:00
asepharyana 545397eb1f fix(infra): fix Prometheus Docker SD relabel + group_add 2026-07-23 07:50:20 +07:00
asepharyanaandClaude Opus 4.8 40e1a80f9f feat(infra): auto-discovery Prometheus + Traefik metrics
- Prometheus: add docker_sd_configs for auto-discovery via labels
- Prometheus: mount Docker socket for Docker SD
- Traefik: enable --metrics.prometheus with entrypoint/service labels
- Traefik: add prometheus.io/scrape=true label
- Observability: mount Docker socket for Prometheus container
- Bump hub submodule (Traefik metrics queries + sparkline charts)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-23 07:45:59 +07:00
asepharyana 688ac095f6 fix(infra): add group_add for docker socket access in hub 2026-07-23 07:35:58 +07:00
GitHub Action a4852f636a chore: update manifests and submodules [skip ci] 2026-07-23 00:33:56 +00:00
GitHub Action bd9cc1f4c7 chore: update manifests and submodules [skip ci] 2026-07-23 00:25:10 +00:00
asepharyanaandClaude Opus 4.8 aaaf5de70c feat(infra): remove Go dashboard, dashboard is now part of hub Next.js app
- Remove dashboard container from observability.yml
- Remove infra/docker/dashboard.Dockerfile
- Remove dashboard route from Traefik apps.yaml
- Mount Docker socket on hub container for /api/dashboard
- Remove dashboard build from CI/CD (docker-build-push.yml)
- Update submodule pointer to hub with Next.js dashboard rewrite

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-23 07:23:12 +07:00
asepharyanaandClaude Opus 4.8 9db886e68b feat(infra): add hub service — Docker, Traefik, CI/CD
- Add infra/docker/hub.Dockerfile (Next.js multi-stage build)
- Add infra/compose/hub.yml with app-shared-net
- Add Traefik route for hub.asepharyana.{my,web}.id → hub:3000
- Update docker-build-push.yml: path detection, matrix build, dispatch, manifest
- Update deploy-docker.yml: include hub.yml in ALL_COMPOSE_FILES
- Update update-submodule.yml: allow hub service
- Update docs/ARCHITECTURE.md

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-23 07:19:55 +07:00
GitHub Action f085375363 chore: update manifests and submodules [skip ci] 2026-07-22 23:03:10 +00:00
GitHub Action 28ba9dd78c chore: update manifests and submodules [skip ci] 2026-07-22 22:59:17 +00:00
GitHub Action bf39884ea6 chore: update manifests and submodules [skip ci] 2026-07-22 22:39:21 +00:00
GitHub Action f96041a164 chore: update manifests and submodules [skip ci] 2026-07-22 22:32:10 +00:00
asepharyana 9a48a49f21 feat(infra): auto-discovered node metrics (CPU, RAM, Disk) and fully dynamic dashboard
- Add node-exporter container for host metrics (CPU, RAM, Disk)
- SVG gauge charts rendered server-side from Prometheus data
- Auto-detect compose project name from Docker labels
- Auto-detect web services via traefik.* labels for quick links
- Remove all hardcoded service name filters
- Dynamic system name based on compose project
2026-07-23 05:31:05 +07:00
GitHub Action 4f15cafc02 chore: update manifests and submodules [skip ci] 2026-07-22 22:21:46 +00:00