File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ # Build stage
2+ FROM rust:1.83-bookworm AS builder
3+
4+ WORKDIR /app
5+
6+ # Install build dependencies
7+ RUN apt-get update && apt-get install -y \
8+ pkg-config \
9+ libssl-dev \
10+ && rm -rf /var/lib/apt/lists/*
11+
12+ # Copy workspace files
13+ COPY Cargo.toml Cargo.lock ./
14+ COPY src ./src
15+ COPY crates ./crates
16+
17+ # Build release binary
18+ RUN cargo build --release --bin rust-tessera
19+
20+ # Runtime stage
21+ FROM debian:bookworm-slim
22+
23+ RUN apt-get update && apt-get install -y \
24+ ca-certificates \
25+ && rm -rf /var/lib/apt/lists/*
26+
27+ # Copy binary from builder
28+ COPY --from=builder /app/target/release/rust-tessera /usr/local/bin/rust-tessera
29+
30+ # Create data directory
31+ RUN mkdir -p /data
32+
33+ # Default environment variables
34+ ENV LISTEN_ADDR=0.0.0.0:8080
35+ ENV DATABASE_URL=sqlite:/data/tessera.db?mode=rwc
36+ ENV STORAGE_BACKEND=fs
37+ ENV STORAGE_PATH=/data/tiles
38+
39+ EXPOSE 8080
40+
41+ ENTRYPOINT ["rust-tessera"]
Original file line number Diff line number Diff line change 1+ # Build stage
2+ FROM rust:1.83-bookworm AS builder
3+
4+ WORKDIR /app
5+
6+ # Install build dependencies
7+ RUN apt-get update && apt-get install -y \
8+ pkg-config \
9+ libssl-dev \
10+ && rm -rf /var/lib/apt/lists/*
11+
12+ # Copy workspace files
13+ COPY Cargo.toml Cargo.lock ./
14+ COPY src ./src
15+ COPY crates ./crates
16+
17+ # Build release binary
18+ RUN cargo build --release --bin witness
19+
20+ # Runtime stage
21+ FROM debian:bookworm-slim
22+
23+ RUN apt-get update && apt-get install -y \
24+ ca-certificates \
25+ && rm -rf /var/lib/apt/lists/*
26+
27+ # Copy binary from builder
28+ COPY --from=builder /app/target/release/witness /usr/local/bin/witness
29+
30+ # Create data directory
31+ RUN mkdir -p /data
32+
33+ # Default environment variables
34+ ENV LISTEN_ADDR=0.0.0.0:8081
35+ ENV DATABASE_URL=sqlite:/data/witness.db?mode=rwc
36+
37+ EXPOSE 8081
38+
39+ ENTRYPOINT ["witness"]
You can’t perform that action at this time.
0 commit comments