FROM golang:1.17 WORKDIR /src build: COPY go.mod go.sum . RUN go mod download COPY . . RUN --mount=type=cache,target=/root/.cache/go-build go build -o build/budgeteer ./cmd/budgeteer SAVE ARTIFACT build/budgeteer /budgeteer AS LOCAL build/budgeteer docker: WORKDIR /app COPY +build/budgeteer . ENTRYPOINT ["/app/budgeteer"] SAVE IMAGE hub.javil.eu/budgeteer:latest run: LOCALLY WITH DOCKER --load=+docker RUN docker-compose up -d END