2020-12-26 15:49:02 +01:00
|
|
|
FROM debian:bullseye AS builder
|
2020-08-11 03:21:32 +02:00
|
|
|
|
2020-08-11 21:54:13 +02:00
|
|
|
# Build-time dependencies
|
|
|
|
RUN apt-get update -yqq && apt-get install -yqq \
|
2020-08-11 23:02:45 +02:00
|
|
|
ca-certificates \
|
|
|
|
build-essential \
|
2020-12-26 15:22:15 +01:00
|
|
|
cmake \
|
2020-08-11 23:02:45 +02:00
|
|
|
pkg-config \
|
|
|
|
qt5-default \
|
|
|
|
libboost-dev \
|
|
|
|
libasound2-dev \
|
|
|
|
libssl-dev \
|
|
|
|
libspeechd-dev \
|
|
|
|
libzeroc-ice-dev \
|
|
|
|
libpulse-dev \
|
|
|
|
libcap-dev \
|
|
|
|
libprotobuf-dev \
|
|
|
|
libprotoc-dev \
|
|
|
|
protobuf-compiler \
|
|
|
|
protobuf-compiler-grpc \
|
|
|
|
libgrpc++-dev \
|
|
|
|
libogg-dev \
|
|
|
|
libavahi-compat-libdnssd-dev \
|
|
|
|
libsndfile1-dev \
|
|
|
|
libbz2-dev \
|
|
|
|
libxi-dev \
|
|
|
|
git --no-install-recommends
|
2020-08-11 21:54:13 +02:00
|
|
|
|
|
|
|
WORKDIR /usr/src/murmur
|
|
|
|
RUN \
|
|
|
|
git clone https://github.com/mumble-voip/mumble.git . \
|
2020-08-11 23:02:45 +02:00
|
|
|
&& git checkout master \
|
|
|
|
&& git submodule init \
|
|
|
|
&& git submodule update
|
2020-08-11 21:54:13 +02:00
|
|
|
|
2020-12-26 15:22:15 +01:00
|
|
|
WORKDIR /usr/src/murmur/build
|
2020-08-11 21:54:13 +02:00
|
|
|
RUN \
|
2020-12-26 15:22:15 +01:00
|
|
|
cmake -Dclient=OFF -DCMAKE_BUILD_TYPE=Release -Dgrpc=ON .. \
|
|
|
|
&& make -j $(nproc)
|
2020-08-11 21:54:13 +02:00
|
|
|
|
|
|
|
|
2020-12-26 15:49:02 +01:00
|
|
|
FROM debian:bullseye
|
2020-08-11 21:54:13 +02:00
|
|
|
EXPOSE 64738/tcp 64738/udp
|
|
|
|
|
|
|
|
ENV HOME /home/user
|
|
|
|
RUN useradd --create-home --home-dir $HOME user \
|
2020-08-11 23:02:45 +02:00
|
|
|
&& chown -R user:user $HOME
|
2020-08-11 03:21:32 +02:00
|
|
|
|
|
|
|
WORKDIR $HOME
|
2020-08-11 21:54:13 +02:00
|
|
|
|
|
|
|
# Runtime dependencies
|
|
|
|
RUN apt-get update && apt-get install -yqq \
|
2020-08-11 23:02:45 +02:00
|
|
|
ca-certificates \
|
|
|
|
'libprotobuf[0-9]+$' \
|
|
|
|
libqt5core5a \
|
|
|
|
libqt5dbus5 \
|
|
|
|
libqt5xml5 \
|
|
|
|
libqt5sql5 \
|
|
|
|
libqt5network5 \
|
|
|
|
libcap2 \
|
|
|
|
'libgrpc[0-9]+$' \
|
|
|
|
libgrpc++1 \
|
|
|
|
libzeroc-ice3.7 \
|
|
|
|
&& apt-get clean && rm -rf /var/lib/apt/lists/*
|
2020-08-11 21:54:13 +02:00
|
|
|
|
|
|
|
COPY --from=builder /usr/src/murmur/release/murmurd /usr/bin/murmurd
|
|
|
|
|
2020-08-11 03:21:32 +02:00
|
|
|
USER user
|
|
|
|
|
2020-12-26 15:49:02 +01:00
|
|
|
RUN mkdir /data
|
|
|
|
COPY --from=builder --chown=user:user /usr/src/murmur/scripts/murmur.ini /data/murmur.ini
|
|
|
|
VOLUME ["/data"]
|
|
|
|
|
2020-08-11 21:54:13 +02:00
|
|
|
ENTRYPOINT [ "/usr/bin/murmurd" ]
|
2020-08-11 03:21:32 +02:00
|
|
|
CMD [ "-fg", "-v", "-ini", "/data/murmur.ini" ]
|