FROM golang:1.21-alpine AS develop # Changement du répertoire de travail WORKDIR /app # pre-copy/cache go.mod for pre-downloading dependencies and only redownloading them in subsequent builds if they change COPY go.mod go.sum ./ RUN go mod download && go mod verify COPY . . CMD ["sh", "-c", "echo 'run application' && go run ./cmd/"] FROM develop AS build RUN CGO_ENABLED=0 go build -o ./build/app ./cmd/ FROM scratch AS release COPY --from=build /app/build/app /exec EXPOSE 1222 ENTRYPOINT ["/exec"]