# syntax=docker/dockerfile:1 # ---- build: compile anubis with your overlaid mascot baked in ---- FROM golang:1.24-bookworm AS build RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \ && apt-get install -y --no-install-recommends nodejs \ && rm -rf /var/lib/apt/lists/* ENV HUSKY=0 WORKDIR /src # context = upstream checkout, with mascot/*.webp already copied in COPY . . RUN npm ci # go generate + web/xess assets + go build -> ./var/anubis RUN mkdir -p var && npm run build # ---- runtime: minimal, same uid/gid as upstream's image ---- FROM gcr.io/distroless/base-debian12 COPY --from=build /src/var/anubis /usr/local/bin/anubis USER 1000:1000 EXPOSE 8923 9090 ENTRYPOINT ["/usr/local/bin/anubis"]