diff --git a/Dockerfile b/Dockerfile index a6e841b..e81d925 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,29 +1,22 @@ # syntax=docker/dockerfile:1 -FROM jayfield/debian-baseimage +FROM jayfield/debian-baseimage AS build_base # ---------------------------------------------------------------------------------------------------------------------------------------- RUN apt-get update && \ - apt-get -y install --no-install-recommends openssh-server udev \ + apt-get -y install --no-install-recommends \ autoconf automake build-essential ccache cmake cpufrequtils doxygen ethtool \ g++ git inetutils-tools libboost-all-dev libncurses5 libncurses5-dev libusb-1.0-0 libusb-1.0-0-dev \ libusb-dev python3-dev python3-mako python3-numpy python3-requests python3-scipy python3-setuptools \ - python3-ruamel.yaml && \ - rm -rf /var/lib/apt/lists/* + python3-ruamel.yaml \ + && rm -rf /var/lib/apt/lists/* # ---------------------------------------------------------------------------------------------------------------------------------------- # Build from sources # ---------------------------------------------------------------------------------------------------------------------------------------- - -# UHD -ADD https://github.com/EttusResearch/uhd.git /tmp/sources/uhd -WORKDIR /tmp/sources/uhd/host/build -RUN cmake ../ -RUN make -j$(nproc) -RUN make test -RUN make install -RUN ldconfig -RUN cp /usr/local/lib/uhd/utils/uhd-usrp.rules /etc/udev/rules.d/ -RUN /usr/local/bin/uhd_images_downloader +FROM build_base AS build +RUN apt-get update && \ + apt-get -y install --no-install-recommends openssh-server udev libavahi-common-dev libavahi-core-dev libavahi-client-dev \ + && rm -rf /var/lib/apt/lists/* # SoapySDR ADD https://github.com/pothosware/SoapySDR.git /tmp/sources/SoapySDR @@ -34,6 +27,32 @@ RUN make install -j$(nproc) RUN ldconfig RUN SoapySDRUtil --info +# SoapyRemote +ADD https://github.com/pothosware/SoapyRemote.git /tmp/sources/SoapyRemote +WORKDIR /tmp/sources/SoapyRemote/build +RUN cmake -DENABLE_AVAHI=ON .. +RUN make -j$(nproc) +RUN make install -j$(nproc) +RUN ldconfig + +# UHD +ADD https://github.com/EttusResearch/uhd.git /tmp/sources/uhd +WORKDIR /tmp/sources/uhd/host/build +RUN cmake \ + -DENABLE_PYTHON_API=OFF \ + -DENABLE_EXAMPLES=OFF \ + -DENABLE_TESTS=OFF \ + -DENABLE_E320=OFF \ + -DENABLE_E300=OFF \ + -DINSTALL_UDEV_RULES=OFF \ + .. +RUN make -j$(nproc) +RUN make test +RUN make install +RUN ldconfig +RUN /usr/local/bin/uhd_images_downloader -t usrp1 +RUN /usr/local/bin/uhd_images_downloader -t b2xx + # SoapyUHD ADD https://github.com/pothosware/SoapyUHD.git /tmp/sources/SoapyUHD WORKDIR /tmp/sources/SoapyUHD/build @@ -43,14 +62,6 @@ RUN make install -j$(nproc) RUN ldconfig ENV UHD_MODULE_PATH=/usr/local/lib/uhd/modules -# SoapyRemote -ADD https://github.com/pothosware/SoapyRemote.git /tmp/sources/SoapyRemote -WORKDIR /tmp/sources/SoapyRemote/build -RUN cmake ../ -RUN make -j$(nproc) -RUN make install -j$(nproc) -RUN ldconfig - # SDRPlay API WORKDIR /tmp/sources COPY bin/SDRplay_RSP_API-Linux-3.15.2.run /tmp/sources/ @@ -69,8 +80,6 @@ RUN make -j$(nproc) RUN make install -j$(nproc) RUN ldconfig -#RUN rm -rf /tmp/sources - # ---------------------------------------------------------------------------------------------------------------------------------------- # Add user RUN useradd -m jens -p jens -s /usr/bin/bash @@ -89,7 +98,7 @@ COPY config/sshd_config /etc/ssh/ # Ports EXPOSE 55132 -EXPOSE 1900 +EXPOSE 10022 EXPOSE 10022 # Start server