2026-02-28 13:42:27 +00:00
|
|
|
|
apiVersion: apps/v1
|
|
|
|
|
|
kind: Deployment
|
|
|
|
|
|
metadata:
|
|
|
|
|
|
name: pingora
|
|
|
|
|
|
namespace: ingress
|
|
|
|
|
|
spec:
|
|
|
|
|
|
replicas: 1
|
|
|
|
|
|
selector:
|
|
|
|
|
|
matchLabels:
|
|
|
|
|
|
app: pingora
|
|
|
|
|
|
template:
|
|
|
|
|
|
metadata:
|
|
|
|
|
|
labels:
|
|
|
|
|
|
app: pingora
|
|
|
|
|
|
annotations:
|
|
|
|
|
|
# Pingora terminates TLS at the mesh boundary; sidecar injection is disabled here
|
|
|
|
|
|
linkerd.io/inject: disabled
|
|
|
|
|
|
spec:
|
|
|
|
|
|
containers:
|
|
|
|
|
|
- name: pingora
|
feat: bring up local dev stack — all services running
- Ory Hydra + Kratos: fixed secret management, DSN config, DB migrations,
OAuth2Client CRD (helm template skips crds/ dir), login-ui env vars
- SeaweedFS: added s3.json credentials file via -s3.config CLI flag
- OpenBao: standalone mode with auto-unseal sidecar, keys in K8s secret
- OpenSearch: increased memory to 1.5Gi / JVM 1g heap
- Gitea: SSL_MODE disable, S3 bucket creation fixed
- Hive: automountServiceAccountToken: false (Lima virtiofs read-only rootfs quirk)
- LiveKit: API keys in values, hostPort conflict resolved
- Linkerd: native sidecar (proxy.nativeSidecar=true) to avoid blocking Jobs
- All placeholder images replaced: pingora→nginx:alpine, login-ui→oryd/kratos-selfservice-ui-node
Full stack running: postgres, valkey, openbao, opensearch, seaweedfs,
kratos, hydra, gitea, livekit, hive (placeholder), login-ui
2026-02-28 22:08:38 +00:00
|
|
|
|
image: nginx:alpine # placeholder until custom Pingora image is built
|
2026-02-28 13:42:27 +00:00
|
|
|
|
ports:
|
|
|
|
|
|
- name: http
|
|
|
|
|
|
containerPort: 80
|
|
|
|
|
|
protocol: TCP
|
|
|
|
|
|
- name: https
|
|
|
|
|
|
containerPort: 443
|
|
|
|
|
|
protocol: TCP
|
|
|
|
|
|
- name: turn-udp
|
|
|
|
|
|
containerPort: 3478
|
|
|
|
|
|
protocol: UDP
|
|
|
|
|
|
# TURN relay range 49152–49252 exposed via hostPort in local overlay
|
|
|
|
|
|
volumeMounts:
|
|
|
|
|
|
- name: config
|
|
|
|
|
|
mountPath: /etc/pingora
|
|
|
|
|
|
readOnly: true
|
|
|
|
|
|
- name: tls
|
|
|
|
|
|
mountPath: /etc/tls
|
|
|
|
|
|
readOnly: true
|
|
|
|
|
|
resources:
|
|
|
|
|
|
limits:
|
|
|
|
|
|
memory: 64Mi
|
|
|
|
|
|
requests:
|
|
|
|
|
|
memory: 32Mi
|
|
|
|
|
|
cpu: 50m
|
|
|
|
|
|
volumes:
|
|
|
|
|
|
- name: config
|
|
|
|
|
|
configMap:
|
|
|
|
|
|
name: pingora-config
|
|
|
|
|
|
- name: tls
|
|
|
|
|
|
secret:
|
|
|
|
|
|
secretName: pingora-tls
|