# Build dance-lessons-coach Docker image FROM golang:1.26-alpine AS builder # Install git (required for go mod download) RUN apk add --no-cache git # Set working directory WORKDIR /app # Copy go module files and download dependencies COPY go.mod go.sum ./ RUN go mod download # Copy entire source code COPY . . # Build the server binary RUN go build -o app ./cmd/server # Final lightweight stage FROM alpine:latest # Install CA certificates for HTTPS RUN apk --no-cache add ca-certificates # Set working directory WORKDIR /root/ # Copy binary from builder stage COPY --from=builder /app/app . # Expose port 8080 EXPOSE 8080 # Start the server CMD ["./app"]