Files
worker/Dockerfile
Gleb Tv 16922d5081 fix(ci): publish valid worker images
Normalize registry and release tag references before Buildx runs. Use process-local liveness so a control-plane outage does not restart a healthy worker container.
2026-07-13 18:18:52 +03:00

38 строки
1.1 KiB
Docker

FROM reg.rsxx.ru/library/golang:1-trixie AS builder
WORKDIR /src
COPY go.mod go.sum ./
RUN go mod download && go mod verify
COPY . .
ARG VERSION=dev
ARG COMMIT=unknown
ARG BUILD_DATE=unknown
RUN CGO_ENABLED=0 go build -trimpath \
-ldflags="-s -w -X main.version=${VERSION} -X main.commit=${COMMIT} -X main.buildDate=${BUILD_DATE}" \
-o /out/rsmon-worker ./cmd/rsmon-worker
FROM reg.rsxx.ru/library/debian:13-slim
RUN apt-get update \
&& apt-get install -y --no-install-recommends ca-certificates chromium tzdata \
&& rm -rf /var/lib/apt/lists/* \
&& groupadd --gid 10001 rsmon-worker \
&& useradd --uid 10001 --gid rsmon-worker --home-dir /var/lib/rsmon-worker --create-home --shell /usr/sbin/nologin rsmon-worker
COPY --from=builder /out/rsmon-worker /usr/local/bin/rsmon-worker
ENV HOME=/var/lib/rsmon-worker \
RSMON_WEBAPP_DATA_DIR=/var/lib/rsmon-worker/webapp
VOLUME ["/var/lib/rsmon-worker"]
EXPOSE 27401 37401
USER rsmon-worker
HEALTHCHECK --interval=30s --timeout=10s --start-period=10s --retries=3 \
CMD ["/usr/local/bin/rsmon-worker", "liveness"]
ENTRYPOINT ["/usr/local/bin/rsmon-worker"]