Implémenter multistage build

Seulement passer fichiers source go à build phase

Copier contenu/ et static/ à /app/.

Copier exécutable et rouler le serveur avec les valeurs par défaut
This commit is contained in:
Victor Lacasse-Beaudoin 2023-05-05 17:40:15 -04:00
parent cb3a099949
commit 8bc301f0d5

View file

@ -7,9 +7,24 @@ LABEL repo="https://git.agecem.com/agecem/babillard"
WORKDIR /go/src/app
COPY . .
COPY go.mod go.sum main.go ./
RUN go get -d -v . && \
go install -v .
ADD cmd/ cmd/
CMD babillard
RUN CGO_ENABLED=0 go build -a -installsuffix cgo -o babillard .
# Alpine
FROM alpine:3.17.2
RUN apk update && apk upgrade --no-cache
WORKDIR /app
ADD contenu/ contenu/
ADD static/ static/
COPY --from=build /go/src/app/babillard /usr/bin/babillard
CMD ["babillard", "server"]