bones_lib 0.2.0

Opinionated game meta-engine built on Bevy
Documentation
# syntax=docker/dockerfile:1.4

#
# Bones Matchmaker Docker image
#

FROM rust:1.69.0-slim as builder

WORKDIR /usr/src/bones
COPY . .
RUN --mount=type=cache,target=/usr/local/cargo/registry/cache \
    --mount=type=cache,target=/usr/local/cargo/registry/index \
    --mount=type=cache,target=/usr/local/cargo/git/db \
    --mount=type=cache,target=/usr/src/bones/target \
    # Uncomment if building with behind custom CA cert
    #--mount=type=bind,src=./cacert.gitignore.crt,target=/etc/ssl/certs/ca-certificates.crt \
    cargo build --release -p bones_matchmaker

RUN --mount=type=cache,target=/usr/src/bones/target \
    cp target/release/bones_matchmaker /usr/local/bin/bones_matchmaker

FROM ubuntu:23.04
USER 1001
COPY --from=builder /usr/local/bin/bones_matchmaker /bones_matchmaker
EXPOSE 8943/udp
CMD /bones_matchmaker