Skip to content

Commit

Permalink
For testing / future - Ubuntu 24.04 Dockerfile (#953)
Browse files Browse the repository at this point in the history
* Ubuntu Noble

* Add 32-bit  support

* Try again to fix dependencies

---------

Co-authored-by: Luke Berndt <[email protected]>
  • Loading branch information
jquagga and robotastic authored Dec 15, 2024
1 parent 0447881 commit 8083a86
Showing 1 changed file with 10 additions and 41 deletions.
51 changes: 10 additions & 41 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM ubuntu:22.04 AS builder
FROM ubuntu:24.04 AS builder

# Install docker for passing the socket to allow for intercontainer exec
RUN apt-get update && \
Expand All @@ -11,6 +11,8 @@ RUN apt-get update && \
curl \
git \
gnuradio-dev \
gr-osmosdr \
libosmosdr-dev \
libairspy-dev \
libairspyhf-dev \
libbladerf-dev \
Expand All @@ -22,6 +24,7 @@ RUN apt-get update && \
libmirisdr-dev \
liborc-0.4-dev \
libpthread-stubs0-dev \
librtlsdr-dev \
libsndfile1-dev \
libsoapysdr-dev \
libssl-dev \
Expand All @@ -33,41 +36,6 @@ RUN apt-get update && \
wget \
python3-six

# Compile librtlsdr-dev 2.0 for SDR-Blog v4 support and other updates
# Ubuntu 22.04 LTS has librtlsdr 0.6.0
RUN cd /tmp && \
git clone https://github.com/steve-m/librtlsdr.git && \
cd librtlsdr && \
mkdir build && \
cd build && \
cmake .. && \
make -j$(nproc) && \
make install && \
# We need to install both in / and /newroot to use in this image
# and to copy over to the final image
make install && \
make DESTDIR=/newroot install && \
ldconfig && \
cd /tmp && \
rm -rf librtlsdr

# Compile gr-osmosdr ourselves using a fork with various patches included
RUN cd /tmp && \
git clone https://github.com/racerxdl/gr-osmosdr.git && \
cd gr-osmosdr && \
mkdir build && \
cd build && \
cmake -DENABLE_NONFREE=TRUE .. && \
make -j$(nproc) && \
make install && \
# We need to install both in / and /newroot to use in this image
# and to copy over to the final image
make DESTDIR=/newroot install && \
ldconfig && \
cd /tmp && \
rm -rf gr-osmosdr


WORKDIR /src

COPY . .
Expand All @@ -77,11 +45,12 @@ WORKDIR /src/build
RUN cmake .. && make -j$(nproc) && make DESTDIR=/newroot install

#Stage 2 build
FROM ubuntu:22.04
RUN apt-get update && apt-get install --no-install-recommends -y ca-certificates gr-funcube gr-iqbal curl wget rsync libboost-log1.74.0 \
libboost-chrono1.74.0 libgnuradio-digital3.10.1 libgnuradio-analog3.10.1 libgnuradio-filter3.10.1 libgnuradio-network3.10.1 \
libgnuradio-uhd3.10.1 libsoapysdr0.8 soapysdr0.8-module-all libairspyhf1 libfreesrp0 libxtrx0 sox fdkaac docker.io && \
rm -rf /var/lib/apt/lists/*
FROM ubuntu:24.04
RUN apt-get update && apt-get -y upgrade && apt-get install --no-install-recommends -y ca-certificates gr-funcube gr-iqbal curl wget libboost-log1.83.0 \
libboost-chrono1.83.0t64 libgnuradio-digital3.10.9t64 libgnuradio-analog3.10.9t64 libgnuradio-filter3.10.9t64 libgnuradio-network3.10.9t64 \
libgnuradio-uhd3.10.9t64 libgnuradio-osmosdr0.2.0t64 libsoapysdr0.8 soapysdr0.8-module-all libairspyhf1 libfreesrp0 librtlsdr2 libxtrx0 sox fdkaac docker.io && \
rm -rf /var/lib/apt/lists/* && \
rm -rf /usr/share/{doc,man,info} && rm -rf /usr/local/share/{doc,man,info}

COPY --from=builder /newroot /

Expand Down

0 comments on commit 8083a86

Please sign in to comment.