Files
firezone/rust/relay.Dockerfile
Thomas Eizinger a491521ef7 feat(relay): add Dockerfile (#1661)
This adds a basic Dockerfile for the relay so users and devs can easily
start it.
2023-06-15 19:59:53 +02:00

24 lines
753 B
Docker

# syntax=docker/dockerfile:1.5-labs
FROM rust:1.70-slim as builder
WORKDIR /workspace
ADD . .
RUN --mount=type=cache,target=./target \
--mount=type=cache,target=/usr/local/cargo/registry \
--mount=type=cache,target=/usr/local/rustup \
rustup target add x86_64-unknown-linux-musl && \
cargo build --release --bin relay --target x86_64-unknown-linux-musl
RUN --mount=type=cache,target=./target \
mv ./target/x86_64-unknown-linux-musl/release/relay /usr/local/bin/relay
FROM scratch
COPY --from=builder /usr/local/bin/relay /usr/local/bin/relay
ENV RUST_BACKTRACE=1
EXPOSE 3478/udp
EXPOSE 49152-65535/udp
# This purposely does not include an `init` process. Use `docker run --init` for proper signal handling.
ENTRYPOINT ["relay"]