QuickDID is a high-performance AT Protocol identity resolution service written in Rust. It provides handle-to-DID resolution with Redis-backed caching and queue processing.
1# syntax=docker/dockerfile:1.4
2FROM rust:1.89-slim AS builder
3
4RUN apt-get update && apt-get install -y \
5 pkg-config \
6 libssl-dev \
7 && rm -rf /var/lib/apt/lists/*
8
9WORKDIR /app
10COPY Cargo.lock Cargo.toml ./
11
12ARG GIT_HASH=0
13ENV GIT_HASH=$GIT_HASH
14
15COPY src ./src
16RUN cargo build --bin quickdid --release
17
18FROM gcr.io/distroless/cc-debian12
19
20LABEL org.opencontainers.image.title="quickdid"
21LABEL org.opencontainers.image.description="A fast and scalable com.atproto.identity.resolveHandle service"
22LABEL org.opencontainers.image.licenses="MIT"
23LABEL org.opencontainers.image.authors="Nick Gerakines <nick.gerakines@gmail.com>"
24LABEL org.opencontainers.image.source="https://tangled.sh/@smokesignal.events/quickdid"
25LABEL org.opencontainers.image.version="1.0.0-rc.2"
26
27WORKDIR /app
28COPY --from=builder /app/target/release/quickdid /app/quickdid
29
30ENV HTTP_PORT=8080
31ENV RUST_LOG=info
32ENV RUST_BACKTRACE=full
33
34ENTRYPOINT ["/app/quickdid"]