mumble-docker/Dockerfile.multistage

89 lines
2.1 KiB
Docker

FROM ubuntu:focal AS builder
# needed to install tzdata
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install --no-install-recommends -y \
ca-certificates \
git \
build-essential \
cmake \
pkg-config \
qt5-default \
libboost-dev \
libasound2-dev \
libssl-dev \
libspeechd-dev \
libzeroc-ice-dev \
libpulse-dev \
libcap-dev \
libprotobuf-dev \
protobuf-compiler \
protobuf-compiler-grpc \
libprotoc-dev \
libogg-dev \
libavahi-compat-libdnssd-dev \
libsndfile1-dev \
libgrpc++-dev \
libxi-dev \
libbz2-dev \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /root
RUN git clone -b 1.5.x https://github.com/mumble-voip/mumble.git
WORKDIR /root/mumble
RUN git submodule update --init --recursive
WORKDIR /root/mumble/build
RUN cmake -Dclient=OFF -DCMAKE_BUILD_TYPE=Release -Dgrpc=ON .. || \
( cat \
/root/mumble/build/CMakeFiles/CMakeOutput.log \
/root/mumble/build/CMakeFiles/CMakeError.log \
&& false \
)
RUN make -j $(nproc)
# Clean distribution stage
#FROM ubuntu:focal as prod
#
#ARG DEBIAN_FRONTEND=noninteractive
#
#RUN adduser murmur
#RUN apt-get update && apt-get install --no-install-recommends -y \
# libcap2 \
# libzeroc-ice3.7 \
# '^libprotobuf[0-9]+$' \
# '^libgrpc[0-9]+$' \
# libgrpc++1 \
# libavahi-compat-libdnssd1 \
# libqt5core5a \
# libqt5network5 \
# libqt5sql5 \
# libqt5sql5-mysql \
# libqt5sql5-psql \
# libqt5sql5-sqlite \
# libqt5xml5 \
# libqt5dbus5 \
# ca-certificates \
# && apt-get clean \
# && rm -rf /var/lib/apt/lists/*
#RUN mkdir /etc/murmur && \
# chown --verbose -R murmur:murmur /etc/murmur
#COPY --from=builder /root/mumble/build/mumble-server /usr/bin/mumble-server
#COPY --from=builder /root/mumble/build/mumble-server.ini /etc/murmur/murmur.ini
#COPY --from=builder /root/mumble/build /etc/
#RUN mkdir /var/lib/murmur && \
# chown --verbose -R murmur:murmur /var/lib/murmur && \
# sed -i 's/^database=$/database=\/var\/lib\/murmur\/murmur.sqlite/' /etc/murmur/murmur.ini
#EXPOSE 64738/tcp 64738/udp 50051
#USER murmur
#CMD /usr/bin/mumble-server -v -fg -ini /etc/murmur/murmur.ini
CMD mumble-server -v -fg -ini mumble-server.ini