Files
orbien/docker/Dockerfile.server
T

30 lines
989 B
Docker

ARG RUST_VERSION=1.88
FROM node:22-bookworm AS web
WORKDIR /src
COPY server-ui/package.json server-ui/package-lock.json ./server-ui/
RUN cd server-ui && npm ci
COPY server-ui/ ./server-ui/
RUN mkdir -p server/assets && cd server-ui && npm run build
FROM rust:${RUST_VERSION}-bookworm AS build
WORKDIR /src
COPY Cargo.toml Cargo.lock ./
COPY core ./core
COPY client ./client
COPY server ./server
COPY desktop ./desktop
COPY --from=web /src/server/assets ./server/assets
RUN cargo build --release -p orbien-server \
&& strip target/release/orbien-server
FROM debian:bookworm-slim
RUN apt-get update \
&& apt-get install -y --no-install-recommends ca-certificates \
&& rm -rf /var/lib/apt/lists/*
COPY --from=build /src/target/release/orbien-server /usr/local/bin/orbien-server
COPY docker/conf/orbien-server.toml /etc/orbien/orbien-server.toml
EXPOSE 9527/tcp 9527/udp 9528/udp 80/tcp 443/tcp 8020/tcp
ENTRYPOINT ["orbien-server"]
CMD ["-c", "/etc/orbien/orbien-server.toml"]