siglog 0.1.0

A minimal Tessera-compatible transparency log server
Documentation
# Build stage
FROM rust:1.90-bookworm AS builder

WORKDIR /app

# Install build dependencies
RUN apt-get update && apt-get install -y \
    pkg-config \
    libssl-dev \
    && rm -rf /var/lib/apt/lists/*

# Copy workspace files
COPY Cargo.toml Cargo.lock ./
COPY src ./src
COPY crates ./crates

# Build release binary
RUN cargo build --release --bin siglog

# Runtime stage
FROM debian:bookworm-slim

RUN apt-get update && apt-get install -y \
    ca-certificates \
    && rm -rf /var/lib/apt/lists/*

# Copy binary from builder
COPY --from=builder /app/target/release/siglog /usr/local/bin/siglog

# Create data directory
RUN mkdir -p /data

# Default environment variables
ENV LISTEN_ADDR=0.0.0.0:8080
ENV DATABASE_URL=sqlite:/data/tessera.db?mode=rwc
ENV STORAGE_BACKEND=fs
ENV STORAGE_PATH=/data/tiles

EXPOSE 8080

ENTRYPOINT ["siglog"]