docker optimization

* move openwebrx project tools to a separate layer for lower download
  volume and faster builds
* use COPY instead of ADD
* COPY multiple files at once to reduce number of layers
This commit is contained in:
Jakob Ketterl
2020-09-01 23:30:48 +02:00
parent f90670f477
commit f47ebb2adb
16 changed files with 88 additions and 58 deletions

View File

@ -1,7 +1,7 @@
ARG ARCHTAG
FROM openwebrx-soapysdr-base:$ARCHTAG
ADD docker/scripts/install-dependencies-airspy.sh /
COPY docker/scripts/install-dependencies-airspy.sh /
RUN /install-dependencies-airspy.sh &&\
rm /install-dependencies-airspy.sh

View File

@ -1,11 +1,14 @@
FROM debian:buster-slim
ADD docker/files/js8call/js8call-hamlib.patch /
ADD docker/files/wsjtx/*.patch /
ADD docker/scripts/install-dependencies.sh /
COPY docker/files/js8call/js8call-hamlib.patch \
docker/files/wsjtx/*.patch \
docker/scripts/install-dependencies.sh \
docker/scripts/install-owrx-tools.sh /
RUN /install-dependencies.sh && \
rm /install-dependencies.sh && \
rm /*.patch
RUN /install-owrx-tools.sh && \
rm /install-owrx-tools.sh
ENTRYPOINT ["/init"]

View File

@ -1,8 +1,8 @@
ARG ARCHTAG
FROM openwebrx-soapysdr-base:$ARCHTAG
ADD docker/scripts/install-dependencies-fcdpp.sh /
COPY docker/scripts/install-dependencies-fcdpp.sh /
RUN /install-dependencies-fcdpp.sh &&\
rm /install-dependencies-fcdpp.sh
ADD . /opt/openwebrx
COPY . /opt/openwebrx

View File

@ -1,8 +1,9 @@
ARG ARCHTAG
FROM openwebrx-base:$ARCHTAG
ADD docker/scripts/install-dependencies-*.sh /
ADD docker/files/sdrplay/install-lib.*.patch /
COPY docker/scripts/install-dependencies-*.sh \
docker/files/sdrplay/install-lib.*.patch \
docker/scripts/install-connectors.sh /
RUN /install-dependencies-rtlsdr.sh &&\
/install-dependencies-soapysdr.sh &&\
@ -16,13 +17,11 @@ RUN /install-dependencies-rtlsdr.sh &&\
/install-dependencies-perseus.sh &&\
/install-dependencies-fcdpp.sh &&\
/install-dependencies-radioberry.sh &&\
/install-connectors.sh &&\
rm /install-dependencies-*.sh &&\
rm /install-lib.*.patch
ADD docker/scripts/install-connectors.sh /
RUN /install-connectors.sh &&\
rm /install-lib.*.patch && \
rm /install-connectors.sh
ADD docker/files/services/sdrplay /etc/services.d/sdrplay
COPY docker/files/services/sdrplay /etc/services.d/sdrplay
ADD . /opt/openwebrx

View File

@ -1,8 +1,8 @@
ARG ARCHTAG
FROM openwebrx-soapysdr-base:$ARCHTAG
ADD docker/scripts/install-dependencies-hackrf.sh /
COPY docker/scripts/install-dependencies-hackrf.sh /
RUN /install-dependencies-hackrf.sh &&\
rm /install-dependencies-hackrf.sh
ADD . /opt/openwebrx
COPY . /opt/openwebrx

View File

@ -1,8 +1,8 @@
ARG ARCHTAG
FROM openwebrx-soapysdr-base:$ARCHTAG
ADD docker/scripts/install-dependencies-limesdr.sh /
COPY docker/scripts/install-dependencies-limesdr.sh /
RUN /install-dependencies-limesdr.sh &&\
rm /install-dependencies-limesdr.sh
ADD . /opt/openwebrx
COPY . /opt/openwebrx

View File

@ -1,8 +1,8 @@
ARG ARCHTAG
FROM openwebrx-base:$ARCHTAG
ADD docker/scripts/install-dependencies-perseus.sh /
COPY docker/scripts/install-dependencies-perseus.sh /
RUN /install-dependencies-perseus.sh &&\
rm /install-dependencies-perseus.sh
ADD . /opt/openwebrx
COPY . /opt/openwebrx

View File

@ -1,8 +1,8 @@
ARG ARCHTAG
FROM openwebrx-soapysdr-base:$ARCHTAG
ADD docker/scripts/install-dependencies-plutosdr.sh /
COPY docker/scripts/install-dependencies-plutosdr.sh /
RUN /install-dependencies-plutosdr.sh &&\
rm /install-dependencies-plutosdr.sh
ADD . /opt/openwebrx
COPY . /opt/openwebrx

View File

@ -1,8 +1,8 @@
ARG ARCHTAG
FROM openwebrx-soapysdr-base:$ARCHTAG
ADD docker/scripts/install-dependencies-radioberry.sh /
COPY docker/scripts/install-dependencies-radioberry.sh /
RUN /install-dependencies-radioberry.sh &&\
rm /install-dependencies-radioberry.sh
ADD . /opt/openwebrx
COPY . /opt/openwebrx

View File

@ -1,12 +1,12 @@
ARG ARCHTAG
FROM openwebrx-base:$ARCHTAG
ADD docker/scripts/install-dependencies-rtlsdr.sh /
ADD docker/scripts/install-connectors.sh /
COPY docker/scripts/install-dependencies-rtlsdr.sh \
docker/scripts/install-connectors.sh /
RUN /install-dependencies-rtlsdr.sh &&\
rm /install-dependencies-rtlsdr.sh &&\
/install-connectors.sh &&\
rm /install-connectors.sh
ADD . /opt/openwebrx
COPY . /opt/openwebrx

View File

@ -1,8 +1,8 @@
ARG ARCHTAG
FROM openwebrx-soapysdr-base:$ARCHTAG
ADD docker/scripts/install-dependencies-rtlsdr-soapy.sh /
COPY docker/scripts/install-dependencies-rtlsdr-soapy.sh /
RUN /install-dependencies-rtlsdr-soapy.sh &&\
rm /install-dependencies-rtlsdr-soapy.sh
ADD . /opt/openwebrx
COPY . /opt/openwebrx

View File

@ -1,12 +1,12 @@
ARG ARCHTAG
FROM openwebrx-soapysdr-base:$ARCHTAG
ADD docker/scripts/install-dependencies-sdrplay.sh /
ADD docker/files/sdrplay/install-lib.*.patch /
COPY docker/scripts/install-dependencies-sdrplay.sh \
docker/files/sdrplay/install-lib.*.patch /
RUN /install-dependencies-sdrplay.sh &&\
rm /install-dependencies-sdrplay.sh &&\
rm /install-lib.*.patch
ADD docker/files/services/sdrplay /etc/services.d/sdrplay
COPY docker/files/services/sdrplay /etc/services.d/sdrplay
ADD . /opt/openwebrx
COPY . /opt/openwebrx

View File

@ -1,8 +1,8 @@
ARG ARCHTAG
FROM openwebrx-soapysdr-base:$ARCHTAG
ADD docker/scripts/install-dependencies-soapyremote.sh /
COPY docker/scripts/install-dependencies-soapyremote.sh /
RUN /install-dependencies-soapyremote.sh &&\
rm /install-dependencies-soapyremote.sh
ADD . /opt/openwebrx
COPY . /opt/openwebrx

View File

@ -1,8 +1,8 @@
ARG ARCHTAG
FROM openwebrx-base:$ARCHTAG
ADD docker/scripts/install-dependencies-soapysdr.sh /
ADD docker/scripts/install-connectors.sh /
COPY docker/scripts/install-dependencies-soapysdr.sh \
docker/scripts/install-connectors.sh /
RUN /install-dependencies-soapysdr.sh &&\
rm /install-dependencies-soapysdr.sh &&\
/install-connectors.sh &&\