From 55b83bfce2b61a2e853e69902ec4014317fc887f Mon Sep 17 00:00:00 2001 From: Piers Harding <piers@catalyst.net.nz> Date: Thu, 11 Jul 2019 15:45:59 +1200 Subject: [PATCH] Update Dockerfiles to build with buster --- docker/tango/ska-python-buildenv/Dockerfile | 6 +++++- docker/tango/ska-python-runtime/Dockerfile | 2 +- docker/tango/tango-cpp/Dockerfile | 4 ++-- docker/tango/tango-dependencies/Dockerfile | 10 +++++----- docker/tango/tango-java/Dockerfile | 4 ++-- docker/tango/tango-rest/Dockerfile | 2 +- 6 files changed, 16 insertions(+), 12 deletions(-) diff --git a/docker/tango/ska-python-buildenv/Dockerfile b/docker/tango/ska-python-buildenv/Dockerfile index 2cc5166f..ad70dd4c 100644 --- a/docker/tango/ska-python-buildenv/Dockerfile +++ b/docker/tango/ska-python-buildenv/Dockerfile @@ -65,7 +65,11 @@ COPY --chown=tango:tango Pipfile Pipfile COPY --chown=tango:tango Pipfile.lock Pipfile.lock # Install PyTango et al. into the virtual environment. -RUN pipenv install --dev +# for Debian buster - make sure the correct libboost_python named lib is present +RUN if [ -f "/usr/lib/x86_64-linux-gnu/libboost_python3-py37.so" ] && [ ! -f "/usr/lib/x86_64-linux-gnu/libboost_python-py37.so" ]; then \ + ln -s /usr/lib/x86_64-linux-gnu/libboost_python3-py37.so /usr/lib/x86_64-linux-gnu/libboost_python-py37.so; \ + fi; \ + pipenv install --dev # The following commands are executed when extending this image. # Copy the Pipfile across to the image so that pipenv knows which dependencies diff --git a/docker/tango/ska-python-runtime/Dockerfile b/docker/tango/ska-python-runtime/Dockerfile index ad7064e5..7aff38d1 100644 --- a/docker/tango/ska-python-runtime/Dockerfile +++ b/docker/tango/ska-python-runtime/Dockerfile @@ -21,7 +21,7 @@ USER root # * python3 is required as this image is intended for running Python Tango # devices. # -RUN runtimeDeps='libboost-python1.62.0 \ +RUN runtimeDeps='libboost-python1.67.0 \ make \ python3' \ && DOCKERHOST=`awk '/^[a-z]+[0-9]+\t00000000/ { printf("%d.%d.%d.%d", "0x" substr($3, 7, 2), "0x" substr($3, 5, 2), "0x" substr($3, 3, 2), "0x" substr($3, 1, 2)) }' < /proc/net/route` \ diff --git a/docker/tango/tango-cpp/Dockerfile b/docker/tango/tango-cpp/Dockerfile index e69a1979..addfdf23 100644 --- a/docker/tango/tango-cpp/Dockerfile +++ b/docker/tango/tango-cpp/Dockerfile @@ -28,10 +28,10 @@ RUN TANGO_VERSION=9.2.5a \ && apt-get purge -y --auto-remove $buildDeps \ && rm -r /usr/src/tango -FROM debian:stretch-slim +FROM debian:buster-slim COPY --from=buildenv /usr/local /usr/local -RUN runtimeDeps='libmariadbclient18 sudo' \ +RUN runtimeDeps='libmariadb3 sudo' \ && DOCKERHOST=`awk '/^[a-z]+[0-9]+\t00000000/ { printf("%d.%d.%d.%d", "0x" substr($3, 7, 2), "0x" substr($3, 5, 2), "0x" substr($3, 3, 2), "0x" substr($3, 1, 2)) }' < /proc/net/route` \ && /usr/local/bin/wait-for-it.sh --host=$DOCKERHOST --port=3142 --timeout=3 --strict --quiet -- echo "Acquire::http::Proxy \"http://$DOCKERHOST:3142\";" > /etc/apt/apt.conf.d/30proxy \ && echo "Proxy detected on docker host - using for this build" || echo "No proxy detected on docker host" \ diff --git a/docker/tango/tango-dependencies/Dockerfile b/docker/tango/tango-dependencies/Dockerfile index d183f729..27ad351b 100644 --- a/docker/tango/tango-dependencies/Dockerfile +++ b/docker/tango/tango-dependencies/Dockerfile @@ -3,7 +3,7 @@ # intermediate image, then creates a release image containing the compiled # binaries. # -FROM debian:stretch-slim as buildenv +FROM debian:buster-slim as buildenv # Copy across files that are used to help orchestrate container compositions # and test execution sequences @@ -22,7 +22,7 @@ RUN ZEROMQ_VERSION=4.0.5 \ && rm -rf /var/lib/apt/lists/* \ && mkdir /usr/src/zeromq \ && cd /usr/src/zeromq \ - && curl -fsSL "$ZEROMQ_DOWNLOAD_URL" -o zeromq.tar.gz \ + && curl -kfsSL "$ZEROMQ_DOWNLOAD_URL" -o zeromq.tar.gz \ && tar xf zeromq.tar.gz -C /usr/src/zeromq --strip-components=1 \ && ./configure --enable-static=no \ && make -C /usr/src/zeromq -j$(nproc) \ @@ -38,8 +38,8 @@ RUN OMNIORB_DOWNLOAD_URL=https://svwh.dl.sourceforge.net/project/omniorb/omniORB && rm -rf /var/lib/apt/lists/* \ && mkdir -p /usr/src/omniorb \ && cd /usr/src/omniorb \ - && curl -fsSL "$OMNIORB_DOWNLOAD_URL" -o omniorb.tar.bz2 \ - && curl -fsSL "$OMNIORB_PATCH_URL" -o dii_race.patch \ + && curl -kfsSL "$OMNIORB_DOWNLOAD_URL" -o omniorb.tar.bz2 \ + && curl -kfsSL "$OMNIORB_PATCH_URL" -o dii_race.patch \ && tar xf omniorb.tar.bz2 -C /usr/src/omniorb --strip-components=1 \ && patch -p0 < dii_race.patch \ && ./configure --enable-static=no \ @@ -48,6 +48,6 @@ RUN OMNIORB_DOWNLOAD_URL=https://svwh.dl.sourceforge.net/project/omniorb/omniORB && apt-get purge -y --auto-remove $buildDeps \ && rm -r /usr/src/omniorb -FROM debian:stretch-slim +FROM debian:buster-slim COPY --from=buildenv /usr/local /usr/local diff --git a/docker/tango/tango-java/Dockerfile b/docker/tango/tango-java/Dockerfile index 99723524..a916952f 100644 --- a/docker/tango/tango-java/Dockerfile +++ b/docker/tango/tango-java/Dockerfile @@ -28,10 +28,10 @@ RUN TANGO_VERSION=9.2.5a \ && apt-get purge -y --auto-remove $buildDeps \ && rm -r /usr/src/tango -FROM debian:stretch-slim +FROM debian:buster-slim COPY --from=buildenv /usr/local /usr/local -RUN runtimeDeps='default-jre-headless libmariadbclient18 sudo' \ +RUN runtimeDeps='default-jre-headless libmariadb3 sudo' \ && mkdir -p /usr/share/man/man1 \ && DOCKERHOST=`awk '/^[a-z]+[0-9]+\t00000000/ { printf("%d.%d.%d.%d", "0x" substr($3, 7, 2), "0x" substr($3, 5, 2), "0x" substr($3, 3, 2), "0x" substr($3, 1, 2)) }' < /proc/net/route` \ && /usr/local/bin/wait-for-it.sh --host=$DOCKERHOST --port=3142 --timeout=3 --strict --quiet -- echo "Acquire::http::Proxy \"http://$DOCKERHOST:3142\";" > /etc/apt/apt.conf.d/30proxy \ diff --git a/docker/tango/tango-rest/Dockerfile b/docker/tango/tango-rest/Dockerfile index 88de949a..45dd8d59 100644 --- a/docker/tango/tango-rest/Dockerfile +++ b/docker/tango/tango-rest/Dockerfile @@ -1,6 +1,6 @@ ARG DOCKER_REGISTRY_HOST ARG DOCKER_REGISTRY_USER -FROM debian:stretch-slim as buildenv +FROM debian:buster-slim as buildenv RUN MTANGOREST_VERSION=rc4-2.12 \ && MTANGOREST_DOWNLOAD_URL=https://github.com/Ingvord/mtangorest.server/releases/download/mtangorest.server-$MTANGOREST_VERSION/mtangorest.server-$MTANGOREST_VERSION.jar \ -- GitLab