Add Dockerfile
Signed-off-by: Sebastian Hasler <sebastian.hasler@stuvus.uni-stuttgart.de>master
parent
cfae6178c7
commit
98b00a396b
|
@ -0,0 +1,38 @@
|
|||
FROM rust:1.48-alpine AS build
|
||||
|
||||
ARG REV=master
|
||||
|
||||
RUN apk add --no-cache \
|
||||
clang-libs \
|
||||
curl \
|
||||
libc-dev \
|
||||
libnice-dev \
|
||||
openssl-dev \
|
||||
;
|
||||
WORKDIR /src
|
||||
RUN curl https://codeload.github.com/Johni0702/mumble-web-proxy/tar.gz/$REV \
|
||||
| tar -xzf - --strip-components 1
|
||||
RUN echo -e '\n[dependencies."async-trait"]\ndefault-features = false' >> Cargo.toml
|
||||
RUN RUSTFLAGS="-C target-feature=-crt-static" cargo install --path .
|
||||
|
||||
FROM alpine
|
||||
|
||||
RUN apk add --no-cache \
|
||||
bash \
|
||||
libgcc \
|
||||
libnice \
|
||||
;
|
||||
COPY --from=build /usr/local/cargo/bin/mumble-web-proxy /mumble-web-proxy
|
||||
COPY entrypoint.sh /entrypoint.sh
|
||||
|
||||
ENV MWP_LISTEN_WS=64737
|
||||
ENV MWP_SERVER=mumble-server:64738
|
||||
ENV MWP_ACCEPT_INVALID_CERTIFICATE=
|
||||
ENV MWP_ICE_PORT_MIN=
|
||||
ENV MWP_ICE_PORT_MAX=
|
||||
ENV MWP_ICE_IPV4=
|
||||
ENV MWP_ICE_IPV6=
|
||||
|
||||
CMD ["/entrypoint.sh"]
|
||||
USER 1000
|
||||
EXPOSE 64737
|
|
@ -0,0 +1,13 @@
|
|||
# mumble-web-proxy OCI image
|
||||
|
||||
This directory provides files to build a mumble-web-proxy OCI image.
|
||||
The image is based on Alpine Linux and is less than 30 MiB in size.
|
||||
One can use [Docker](https://www.docker.com/) in order to build the image,
|
||||
as follows.
|
||||
|
||||
```
|
||||
docker build --build-arg REV=master -t mumble-web-proxy .
|
||||
```
|
||||
|
||||
`master` can be replaced by any revision (i.e. branch, tag or commit hash) of
|
||||
this repository.
|
|
@ -0,0 +1,25 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
cmd=("/mumble-web-proxy" "--listen-ws=$MWP_LISTEN_WS" "--server=$MWP_SERVER")
|
||||
|
||||
if [ "$MWP_ACCEPT_INVALID_CERTIFICATE" = true ]; then
|
||||
cmd+=("--accept-invalid-certificate")
|
||||
fi
|
||||
|
||||
if [ -n "$MWP_ICE_PORT_MIN" ]; then
|
||||
cmd+=("--ice-port-min=$MWP_ICE_PORT_MIN")
|
||||
fi
|
||||
|
||||
if [ -n "$MWP_ICE_PORT_MAX" ]; then
|
||||
cmd+=("--ice-port-max=$MWP_ICE_PORT_MAX")
|
||||
fi
|
||||
|
||||
if [ -n "$MWP_ICE_IPV4" ]; then
|
||||
cmd+=("--ice-ipv4=$MWP_ICE_IPV4")
|
||||
fi
|
||||
|
||||
if [ -n "$MWP_ICE_IPV6" ]; then
|
||||
cmd+=("--ice-ipv6=$MWP_ICE_IPV6")
|
||||
fi
|
||||
|
||||
exec "${cmd[@]}"
|
Loading…
Reference in New Issue