A container registry that uses the AT Protocol for manifest storage and S3 for blob storage. atcr.io
docker container atproto go
72
fork

Configure Feed

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

at main 53 lines 1.8 kB view raw
1FROM docker.io/golang:1.26.2-trixie AS builder 2 3ENV DEBIAN_FRONTEND=noninteractive 4 5RUN apt-get update && \ 6 apt-get install -y --no-install-recommends sqlite3 libsqlite3-dev && \ 7 rm -rf /var/lib/apt/lists/* 8 9WORKDIR /build 10 11# Disable workspace mode — go.work references modules not in the Docker context 12ENV GOWORK=off 13 14# Copy module definitions first for layer caching 15COPY go.mod go.sum ./ 16COPY scanner/go.mod scanner/go.sum ./scanner/ 17 18RUN cd scanner && go mod download 19 20# Copy full source 21COPY . . 22 23RUN cd scanner && CGO_ENABLED=1 go build \ 24 -ldflags="-s -w -linkmode external -extldflags '-static'" \ 25 -trimpath \ 26 -o /build/atcr-scanner ./cmd/scanner 27 28# ========================================== 29# Stage 2: Minimal FROM scratch runtime 30# ========================================== 31FROM scratch 32 33# Copy CA certificates for HTTPS (presigned URL downloads) 34COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ 35# Copy timezone data for timestamp formatting 36COPY --from=builder /usr/share/zoneinfo /usr/share/zoneinfo 37# Copy binary 38COPY --from=builder /build/atcr-scanner /atcr-scanner 39 40# Expose health endpoint port 41EXPOSE 9090 42 43# OCI image annotations 44LABEL org.opencontainers.image.title="ATCR Scanner" \ 45 org.opencontainers.image.description="ATCR Scanner - container image vulnerability scanner with Syft and Grype" \ 46 org.opencontainers.image.authors="ATCR Contributors" \ 47 org.opencontainers.image.source="https://tangled.org/evan.jarrett.net/at-container-registry" \ 48 org.opencontainers.image.documentation="https://tangled.org/evan.jarrett.net/at-container-registry" \ 49 org.opencontainers.image.licenses="MIT" \ 50 org.opencontainers.image.version="0.1.0" 51 52ENTRYPOINT ["/atcr-scanner"] 53CMD ["serve"]