Dockerfile 557 B

12345678910111213141516171819202122232425262728293031323334
  1. FROM golang:1.21-alpine AS builder
  2. WORKDIR /app
  3. # Install deps
  4. RUN apk add --no-cache git
  5. # Copy Go modules
  6. COPY go.mod go.sum ./
  7. RUN go mod download
  8. # Copy source
  9. COPY . .
  10. # Build
  11. RUN CGO_ENABLED=0 GOOS=linux go build -o /client2server-server .
  12. # === Production ===
  13. FROM alpine:3.19
  14. WORKDIR /app
  15. # Install CA certs for HTTPS
  16. RUN apk add --no-cache ca-certificates tzdata
  17. # Copy binary
  18. COPY --from=builder /client2server-server .
  19. EXPOSE 3843 3844
  20. ENV TOKEN=change_me_in_production
  21. ENV REDPANDA_BROKERS=redpanda:9092
  22. CMD ["/client2server-server"]