51 lines
1.2 KiB
Docker
51 lines
1.2 KiB
Docker
FROM rust:1.32-slim AS eventbuild
|
|
|
|
WORKDIR /build
|
|
|
|
COPY wg-event-gen/Cargo.* /build/
|
|
|
|
RUN rustup target add x86_64-unknown-linux-musl
|
|
|
|
RUN mkdir -p src && echo "fn main() {}" > src/main.rs && cargo build --release --target x86_64-unknown-linux-musl
|
|
|
|
COPY wg-event-gen/ /build
|
|
|
|
RUN cargo build --target x86_64-unknown-linux-musl
|
|
|
|
FROM frolvlad/alpine-glibc AS test
|
|
|
|
COPY --from=eventbuild /build/target/x86_64-unknown-linux-musl/debug/wg-event-gen /usr/bin/
|
|
|
|
RUN echo "2df798799c5049324174c4df0189695d -" > test.md5 && wg-event-gen | md5sum -c test.md5
|
|
|
|
FROM golang AS build
|
|
|
|
COPY wireguard-go /go/src/wireguard
|
|
|
|
WORKDIR /go/src/wireguard
|
|
|
|
RUN echo "package main" > ./donotuseon_linux.go && go get
|
|
|
|
RUN go build
|
|
|
|
FROM frolvlad/alpine-glibc
|
|
|
|
RUN echo http://nl.alpinelinux.org/alpine/edge/testing >> /etc/apk/repositories && apk --no-cache add wireguard-tools bash nload
|
|
|
|
ENV WG_I_PREFER_BUGGY_USERSPACE_TO_POLISHED_KMOD=1
|
|
|
|
COPY --from=build /go/bin/wireguard /usr/bin/wireguard-go
|
|
|
|
COPY --from=eventbuild /build/target/x86_64-unknown-linux-musl/debug/wg-event-gen /usr/bin/
|
|
|
|
COPY init.sh /init.sh
|
|
|
|
RUN chmod +x /init.sh
|
|
|
|
VOLUME /etc/wireguard/
|
|
|
|
EXPOSE 51820/udp
|
|
|
|
ENTRYPOINT /init.sh
|
|
|