Git backed by object storage because you can't stop me
git object-storage kefka
0

Configure Feed

Select the types of activity you want to include in your feed.

objgit / Dockerfile
985 B 31 lines
1# syntax=docker/dockerfile:1 2 3# --- build stage ------------------------------------------------------------- 4FROM golang:1.26 AS build 5 6WORKDIR /src 7 8# Cache module downloads separately from the source tree. 9COPY go.mod go.sum ./ 10RUN --mount=type=cache,target=/go/pkg/mod \ 11 go mod download 12 13COPY . . 14 15# Static, stripped binary. No cgo: objgitd is pure Go and answers the git 16# protocol natively (no `git` binary at runtime). 17RUN --mount=type=cache,target=/go/pkg/mod \ 18 --mount=type=cache,target=/root/.cache/go-build \ 19 CGO_ENABLED=0 go build -trimpath -ldflags="-s -w" \ 20 -o /objgitd ./cmd/objgitd 21 22# --- runtime stage ----------------------------------------------------------- 23# distroless static: just CA certs (for Tigris/S3 TLS) + tzdata, nonroot user. 24FROM gcr.io/distroless/static-debian12:nonroot 25 26COPY --from=build /objgitd /objgitd 27 28# Smart HTTP, git://, metrics. SSH (-ssh-bind) is opt-in; publish it yourself. 29EXPOSE 8080 9418 9090 30 31ENTRYPOINT ["/objgitd"]