Files
tts-module/Dockerfile
Billy D. 147c60fd64
Some checks failed
CI / Lint (push) Successful in 2m55s
CI / Test (push) Successful in 2m57s
CI / Release (push) Successful in 1m37s
CI / Docker Build & Push (push) Failing after 5m29s
CI / Notify (push) Successful in 1s
chore: bump handler-base to v0.1.5, add netrc secret mount to Dockerfile
2026-02-20 18:19:49 -05:00

35 lines
752 B
Docker

# Build stage
FROM golang:1.25-alpine AS builder
WORKDIR /app
# Install ca-certificates for HTTPS
RUN apk add --no-cache ca-certificates git
ENV GOPRIVATE=git.daviestechlabs.io
ENV GONOSUMCHECK=git.daviestechlabs.io
# Copy go mod files
COPY go.mod go.sum ./
RUN --mount=type=secret,id=netrc,target=/root/.netrc go mod download
# Copy source code
COPY . .
# Build static binary
RUN CGO_ENABLED=0 GOOS=linux GOAMD64=v3 go build -ldflags="-w -s" -o /tts-module .
# Runtime stage - scratch for minimal image
FROM scratch
# Copy CA certificates for HTTPS
COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
# Copy binary
COPY --from=builder /tts-module /tts-module
# Run as non-root
USER 65534:65534
ENTRYPOINT ["/tts-module"]