modif Dockerfile

This commit is contained in:
Arnaud Delcasse
2025-10-08 11:55:07 +02:00
parent efccea3f64
commit 327da43928

View File

@@ -1,28 +1,27 @@
FROM golang:1.22-alpine AS builder
FROM golang:alpine as builder
WORKDIR /app
ARG ACCESS_TOKEN_USR="nothing"
ARG ACCESS_TOKEN_PWD="nothing"
# Copy go mod files
COPY go.mod go.sum ./
RUN apk add --no-cache ca-certificates tzdata git
# Download dependencies
RUN go mod download
WORKDIR /
# Create a netrc file using the credentials specified using --build-arg
RUN printf "machine git.coopgo.io\n\
login ${ACCESS_TOKEN_USR}\n\
password ${ACCESS_TOKEN_PWD}\n"\
>> ~/.netrc
RUN chmod 600 ~/.netrc
# Copy source code
COPY . .
# Build the application
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o main .
RUN go mod download && CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o /server
FROM alpine:latest
RUN apk --no-cache add ca-certificates
WORKDIR /root/
# Copy the binary from builder
COPY --from=builder /app/main .
FROM scratch
COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
COPY --from=builder /usr/share/zoneinfo /usr/share/zoneinfo
COPY --from=builder /server /
EXPOSE 8080
CMD ["./main"]
ENTRYPOINT ["/server"]