Dockerfile_bg_projects_refresh
Rama develop · réplica de lectura del repositorio original.
FROM golang:1.25.4 as builder
ARG COMMIT_SHA
RUN echo "commit sha: ${COMMIT_SHA}"
# Set the working directory
WORKDIR $GOPATH/src/github.com/diggerhq/digger
# Copy go.mod/go.sum first for better layer caching
COPY go.mod go.sum ./
RUN go mod download
# Copy all required source, blacklist files that are not required through `.dockerignore`
COPY . .
RUN --mount=type=cache,target=/root/.cache/go-build \
--mount=type=cache,target=/go/pkg/mod \
go build -ldflags="-X 'main.Version=${COMMIT_SHA}'" -o projects_refresh_exe ./background/projects-refresh-service
# Multi-stage build will just copy the binary to an alpine image.
FROM ubuntu:24.04 as runner
ARG COMMIT_SHA
WORKDIR /app
RUN apt-get update && apt-get install -y ca-certificates curl && apt-get install -y git && apt-get clean all
RUN update-ca-certificates
RUN echo "commit sha: ${COMMIT_SHA}"
# Copy the binary to the corresponding folder
COPY --from=builder /go/src/github.com/diggerhq/digger/projects_refresh_exe /app/projects_refresh_exe
RUN chmod +x projects_refresh_exe
# Run the binary
ENTRYPOINT ["./projects_refresh_exe"]