mirror of
https://github.com/dndx/phantun.git
synced 2025-01-18 22:09:30 +08:00
42 lines
914 B
Docker
42 lines
914 B
Docker
|
#
|
||
|
# Dockerfile for phantun
|
||
|
#
|
||
|
|
||
|
#
|
||
|
# Build stage
|
||
|
#
|
||
|
FROM rust:alpine AS builder
|
||
|
|
||
|
COPY . /phantun
|
||
|
|
||
|
RUN apk update \
|
||
|
&& apk add --no-cache --virtual .build-deps musl-dev \
|
||
|
&& cd phantun \
|
||
|
&& cargo build --release \
|
||
|
&& strip target/release/server target/release/client \
|
||
|
&& install target/release/server /usr/local/bin/phantun-server \
|
||
|
&& install target/release/client /usr/local/bin/phantun-client \
|
||
|
&& cd - \
|
||
|
&& rm -r phantun \
|
||
|
&& apk del .build-deps \
|
||
|
&& rm -rf /var/cache/apk/*
|
||
|
|
||
|
#
|
||
|
# Runtime stage
|
||
|
#
|
||
|
FROM alpine:3.16
|
||
|
|
||
|
RUN apk update \
|
||
|
&& apk add --no-cache iptables ip6tables tzdata \
|
||
|
&& rm -rf /var/cache/apk/*
|
||
|
|
||
|
COPY --from=builder /usr/local/bin/phantun-server /usr/local/bin/
|
||
|
COPY --from=builder /usr/local/bin/phantun-client /usr/local/bin/
|
||
|
COPY docker/phantun.sh /usr/local/bin/
|
||
|
|
||
|
ENV USE_IPTABLES_NFT_BACKEND=0
|
||
|
ENV RUST_LOG=INFO
|
||
|
|
||
|
ENTRYPOINT ["phantun.sh"]
|
||
|
CMD ["phantun-server", "--help"]
|