tor_multipath_voip/Dockerfile

80 lines
1.9 KiB
Docker

FROM fedora:31 as builder
RUN dnf install -y \
coreutils \
cmake \
make \
gcc \
gcc-c++ \
ninja-build \
glib2-devel \
libevent-devel \
zlib-devel \
openssl-devel \
autoconf \
automake \
libzstd-devel \
xz-devel \
git \
gstreamer1-devel \
gstreamer1-plugins-base-devel
WORKDIR /home/donar-build
RUN chown -R 1000 /home/donar-build
USER 1000
RUN git clone --single-branch --branch patch/relay_2 https://gitlab.inria.fr/qdufour/wide-tor.git tor2 && \
cd ./tor2 && \
./autogen.sh && \
./configure --disable-asciidoc || cat config.log && \
make -j`nproc`
RUN git clone --single-branch --branch master https://gitlab.inria.fr/qdufour/wide-tor.git tor3 && \
cd ./tor3 && \
./autogen.sh && \
./configure --disable-asciidoc && \
make -j`nproc`
COPY ./src ./src
COPY CMakeLists.txt .
RUN mkdir out && \
cd out && \
cmake -GNinja .. && \
ninja
#####
FROM fedora:31
RUN dnf install -y \
glib2 \
procps-ng \
valgrind \
nmap-ncat \
psmisc \
libevent \
zlib \
strace \
openssl \
libzstd \
xz-libs \
moreutils \
gstreamer1 \
gstreamer1-plugins-base \
gstreamer1-plugins-good \
gstreamer1-plugins-bad-free \
gstreamer1-plugins-ugly-free
WORKDIR /home/donar
RUN mkdir /home/donar/shared && mkdir /home/donar/res && chown -R 1000 /home/donar
USER 1000
ENV HOME /home/donar
COPY --from=builder /home/donar-build/out/donar /usr/local/bin
COPY --from=builder /home/donar-build/out/measlat /usr/local/bin
COPY --from=builder /home/donar-build/out/udpecho /usr/local/bin
COPY --from=builder /home/donar-build/out/torecho /usr/local/bin
COPY --from=builder /home/donar-build/out/dcall /usr/local/bin
COPY --from=builder /home/donar-build/tor2/src/app/tor /usr/local/bin/tor2
COPY --from=builder /home/donar-build/tor3/src/app/tor /usr/local/bin/tor3
COPY ./scripts/container/* /usr/local/bin/
COPY ./torrc_* /etc/
COPY ./assets /assets