Deploy hero_services on Jan's K8s cluster #24

Closed
opened 2026-02-26 03:41:47 +00:00 by mik-tf · 0 comments
Owner

Context

hero_services already produces a fat Docker image (Dockerfile) containing all hero services (hero_books, hero_embedder, hero_redis, hero_indexer, hero_osis, hero_fossil, hero_auth, etc.) managed by zinit via hero_zero run.

The next step is deploying this image on Jan's Kubernetes cluster to make the hero ecosystem operational and publicly accessible.

What's needed

  • K8s manifests or Helm chart (Deployment, Service, Ingress)
  • Persistent volumes for book data, redis state, embedder models
  • Ingress / DNS configuration for public access
  • Cluster access from Jan
  • CI/CD pipeline to push Docker image to registry and deploy on merge

Services exposed

From the Dockerfile, the container exposes:

  • 8883 — hero_books
  • 3875 — zinit web UI
  • 6666 — hero_redis
  • 3388 — hero_indexer
  • 3377 — hero_osis
  • 7365 — hero_fossil
  • 3350 — hero_auth
  • 3760 — hero_aibroker
  • 3752 — hero_embedder

Priority

Books to bring live first: geomind, ourworld, mycelium (per original hero_books #15)

## Context hero_services already produces a fat Docker image (`Dockerfile`) containing all hero services (hero_books, hero_embedder, hero_redis, hero_indexer, hero_osis, hero_fossil, hero_auth, etc.) managed by zinit via `hero_zero run`. The next step is deploying this image on Jan's Kubernetes cluster to make the hero ecosystem operational and publicly accessible. ## What's needed - [ ] K8s manifests or Helm chart (Deployment, Service, Ingress) - [ ] Persistent volumes for book data, redis state, embedder models - [ ] Ingress / DNS configuration for public access - [ ] Cluster access from Jan - [ ] CI/CD pipeline to push Docker image to registry and deploy on merge ## Services exposed From the Dockerfile, the container exposes: - 8883 — hero_books - 3875 — zinit web UI - 6666 — hero_redis - 3388 — hero_indexer - 3377 — hero_osis - 7365 — hero_fossil - 3350 — hero_auth - 3760 — hero_aibroker - 3752 — hero_embedder ## Related - [hero_books #15](https://forge.ourworld.tf/lhumina_code/hero_books/issues/15) (closed, moved here) - [hero_archipelagos](https://forge.ourworld.tf/lhumina_code/hero_archipelagos) will need separate static hosting (WASM frontend) or can be served by hero_books/nginx ## Priority Books to bring live first: geomind, ourworld, mycelium (per original [hero_books #15](https://forge.ourworld.tf/lhumina_code/hero_books/issues/15))
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_services#24
No description provided.