Files
zeekayandHanzo Dev 353a29595d fix(zoo-cloud): bump cloud-web v1.2.1 -> v1.3.2 (responsive header)
zoo.cloud overflowed ~110px at 390: it ran the brand-neutral cloud-web
image at v1.2.1, which predates the responsive-header fix (nav collapses
behind a hamburger below 900px, commit 2e633cd / v1.3.2). lux.cloud already
runs v1.3.2 and reflows cleanly. Same white-label image, just the stale tag.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-26 15:46:04 -07:00

68 lines
2.3 KiB
YAML

---
# Zoo Cloud — Zoo white-label of the validators console (@luxfi/cloud, apps/web).
# The cloud-web image is brand-neutral and white-labels by HOSTNAME at runtime
# (src/lib/brand.ts): served at zoo.cloud it renders Zoo branding + Zoo chain
# data (api.zoo.ngo, chainId 200200, explore.zoo.network, Zoo ID / id.zoo.network).
# Lux is the default, so lux.cloud (lux-cloud/cloud, same image family) is
# untouched. Runs on lux-k8s behind the shared hanzo-ingress (LB 134.199.138.27);
# zoo.cloud apex A -> 134.199.138.27 (proxied) with the Pages custom-domain
# binding removed (the old Zoo Labs marketing site stays at zoo-cloud.pages.dev).
apiVersion: v1
kind: Namespace
metadata:
name: zoo-cloud
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: cloud
namespace: zoo-cloud
labels: { app: cloud, brand: zoo }
spec:
replicas: 2
selector: { matchLabels: { app: cloud } }
template:
metadata: { labels: { app: cloud, brand: zoo } }
spec:
containers:
- name: cloud
image: ghcr.io/luxfi/cloud-web:v1.3.2
imagePullPolicy: IfNotPresent
ports: [{ name: http, containerPort: 3000, protocol: TCP }]
readinessProbe: { httpGet: { path: /health, port: 3000 } }
livenessProbe: { httpGet: { path: /health, port: 3000 } }
resources:
requests: { cpu: 50m, memory: 64Mi }
limits: { cpu: 500m, memory: 256Mi }
---
apiVersion: v1
kind: Service
metadata:
name: cloud
namespace: zoo-cloud
labels: { app: cloud, brand: zoo }
spec:
type: ClusterIP
selector: { app: cloud }
ports: [{ name: http, port: 80, targetPort: 3000, protocol: TCP }]
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: cloud
namespace: zoo-cloud
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
spec:
ingressClassName: ingress
rules:
- host: zoo.cloud
http: { paths: [{ path: /, pathType: Prefix, backend: { service: { name: cloud, port: { number: 80 } } } }] }
- host: www.zoo.cloud
http: { paths: [{ path: /, pathType: Prefix, backend: { service: { name: cloud, port: { number: 80 } } } }] }
tls:
- hosts: [zoo.cloud, www.zoo.cloud]
secretName: cloud-zoo-tls