Files
bux-lang/examples/docker/Dockerfile.alpine-health
dimgigov a785747c37
ci / build (ubuntu) (push) Has been cancelled
ci / macos smoke (push) Has been cancelled
ci / windows smoke (push) Has been cancelled
selfhost-loop / bootstrap determinism (push) Has been cancelled
ci / unit + fmt (push) Has been cancelled
ci / examples (push) Has been cancelled
ci / goldens + tools (push) Has been cancelled
ci / apps (push) Has been cancelled
ci / selfhost smoke (push) Has been cancelled
ci / CI gate (push) Has been cancelled
feat: Linux/cloud platform stack (TLS, registry, static/cross, selfhost PM)
Ship the QUALITY_PLAN platform focus: thin/minimal runtime, --static/--target,
Nexus HTTPS/mTLS with graceful stop, lock checksums + install --locked,
selfhost registry (search/add/HTTP), containers, and CI smokes for cloud path.
2026-07-23 23:00:55 +03:00

22 lines
783 B
Docker

# Session 79 — Alpine multi-stage build of http_health with musl (when host
# can run docker). The *builder* stage expects a prebuilt Linux binary
# produced on Alpine or via musl-gcc:
#
# # On Alpine / with musl-gcc:
# BUX_CC=musl-gcc BUX_RUNTIME=minimal ./buxc --static --release build …
# # or: ./tools/smoke_musl_static.sh
#
# docker build -f examples/docker/Dockerfile.alpine-health -t bux-health-alpine .
#
# Fallback: copy a glibc binary and use debian (see Dockerfile.health).
FROM alpine:3.20 AS runtime
RUN apk add --no-cache ca-certificates
WORKDIR /app
# Prefer a static musl binary if present; else fail the build clearly.
COPY build/http_health_musl /app/http_health
ENV HEALTH_BIND=0.0.0.0
ENV HEALTH_PORT=8080
EXPOSE 8080
ENTRYPOINT ["/app/http_health"]