Extracted from ardenone-cluster/containers/zai-proxy and ardenone-cluster/containers/zai-proxy-dashboard. - proxy/: OpenAI-compatible ZAI reverse proxy (Go, v1.10.0) - Token counting, rate limiting, Prometheus metrics, canary support - dashboard/: Metrics dashboard backend + React frontend (Go, v1.0.0) - Prometheus collector, SQLite storage, SSE live updates - docs/: Operational notes, research, and plan subdirs Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
19 lines
576 B
Text
19 lines
576 B
Text
# Ultra-minimal Dockerfile using pre-built binary, no RUN commands
|
|
FROM alpine:3.19
|
|
|
|
LABEL maintainer="ardenone"
|
|
LABEL description="Z.AI API proxy with token injection and Prometheus metrics"
|
|
|
|
# Copy pre-built binary (statically linked or with minimal deps)
|
|
COPY --chown=1000:1000 zai-proxy /zai-proxy
|
|
|
|
# Alpine includes ca-certificates by default
|
|
# Just need to set up non-root user
|
|
USER 1000:1000
|
|
|
|
EXPOSE 8080
|
|
|
|
HEALTHCHECK --interval=30s --timeout=5s --start-period=5s --retries=3 \
|
|
CMD wget -q --spider http://localhost:8080/health || exit 1
|
|
|
|
ENTRYPOINT ["/zai-proxy"]
|