silserv/Dockerfile
2025-08-08 15:55:55 +07:00

40 lines
No EOL
711 B
Docker

FROM rustlang/rust:nightly-slim AS builder
WORKDIR /app
# Install build dependencies
RUN apt update && apt install -y \
musl-tools \
musl-dev \
build-essential \
libssl-dev \
curl \
pkg-config \
ca-certificates
# Copy dependency files first for better caching
COPY Cargo.toml Cargo.lock ./
COPY ./src ./src
COPY config.toml .
# Build the application
RUN cargo build --release
# Builder
FROM gcr.io/distroless/cc
# Copy the binary
COPY --from=builder /app/target/release/silserv /
COPY --from=builder /app/config.toml /
# Create data directory
EXPOSE 36530
# Environment defaults
ENV SILSERV_LOG_LEVEL=debug
ENV SILSERV_STORAGE__PATH=/app/data/silserv.db
CMD ["./silserv"]