samjeston / openhub Public
Sam Jeston Working vertical 9aa3c45 · History
26 lines· 799 Bytes ·Dockerfile
Raw
1# syntax=docker/dockerfile:1
2
3FROM rust:1.88-bookworm AS build
4WORKDIR /src
5COPY Cargo.toml Cargo.lock ./
6COPY migrations migrations
7COPY src src
8COPY static static
9COPY templates templates
10RUN cargo build --release --locked
11
12FROM debian:bookworm-slim
13# git serves fetches and pushes; everything else is in the binary.
14RUN apt-get update \
15 && apt-get install -y --no-install-recommends git ca-certificates \
16 && rm -rf /var/lib/apt/lists/* \
17 && useradd --system --home-dir /data --shell /usr/sbin/nologin openhub \
18 && mkdir /data && chown openhub:openhub /data
19COPY --from=build /src/target/release/openhub /usr/local/bin/openhub
20USER openhub
21ENV OPENHUB_DATA_DIR=/data \
22 OPENHUB_HTTP_ADDR=0.0.0.0:3000 \
23 OPENHUB_SSH_ADDR=0.0.0.0:2222
24VOLUME /data
25EXPOSE 3000 2222
26ENTRYPOINT ["openhub"]