From ab0413a9ee4834c45386c24c93941147e66fee79 Mon Sep 17 00:00:00 2001 From: Mark Stemm Date: Tue, 31 Jul 2018 10:44:47 -0700 Subject: [PATCH] Downgrade binutils in docker image (#397) debian:unstable head contains binutils 2.31, which generates binaries that are incompatible with kernels < 4.16. To fix this, after installing everything, downgrade binutils to 2.30-22. This has to be done as the last step as it introduces conflicts in other dependencies of the various gcc versions and some of the packages already in the image. --- docker/dev/Dockerfile | 9 +++++++++ docker/local/Dockerfile | 9 +++++++++ docker/stable/Dockerfile | 9 +++++++++ 3 files changed, 27 insertions(+) diff --git a/docker/dev/Dockerfile b/docker/dev/Dockerfile index 622e8431..e8ae9498 100644 --- a/docker/dev/Dockerfile +++ b/docker/dev/Dockerfile @@ -54,6 +54,15 @@ RUN curl -s https://s3.amazonaws.com/download.draios.com/DRAIOS-GPG-KEY.public | RUN rm -df /lib/modules \ && ln -s $SYSDIG_HOST_ROOT/lib/modules /lib/modules +# debian:unstable head contains binutils 2.31, which generates +# binaries that are incompatible with kernels < 4.16. So manually +# forcibly install binutils 2.30-22 instead. +RUN curl -s -o binutils_2.30-22_amd64.deb http://snapshot.debian.org/archive/debian/20180622T211149Z/pool/main/b/binutils/binutils_2.30-22_amd64.deb \ + && curl -s -o libbinutils_2.30-22_amd64.deb http://snapshot.debian.org/archive/debian/20180622T211149Z/pool/main/b/binutils/libbinutils_2.30-22_amd64.deb \ + && curl -s -o binutils-x86-64-linux-gnu_2.30-22_amd64.deb http://snapshot.debian.org/archive/debian/20180622T211149Z/pool/main/b/binutils/binutils-x86-64-linux-gnu_2.30-22_amd64.deb \ + && curl -s -o binutils-common_2.30-22_amd64.deb http://snapshot.debian.org/archive/debian/20180622T211149Z/pool/main/b/binutils/binutils-common_2.30-22_amd64.deb \ + && dpkg -i *binutils*.deb + COPY ./docker-entrypoint.sh / ENTRYPOINT ["/docker-entrypoint.sh"] diff --git a/docker/local/Dockerfile b/docker/local/Dockerfile index 1e86d2bc..ade5fc70 100644 --- a/docker/local/Dockerfile +++ b/docker/local/Dockerfile @@ -50,6 +50,15 @@ RUN rm -df /lib/modules \ ADD falco-${FALCO_VERSION}-x86_64.deb / RUN dpkg -i /falco-${FALCO_VERSION}-x86_64.deb +# debian:unstable head contains binutils 2.31, which generates +# binaries that are incompatible with kernels < 4.16. So manually +# forcibly install binutils 2.30-22 instead. +RUN curl -s -o binutils_2.30-22_amd64.deb http://snapshot.debian.org/archive/debian/20180622T211149Z/pool/main/b/binutils/binutils_2.30-22_amd64.deb \ + && curl -s -o libbinutils_2.30-22_amd64.deb http://snapshot.debian.org/archive/debian/20180622T211149Z/pool/main/b/binutils/libbinutils_2.30-22_amd64.deb \ + && curl -s -o binutils-x86-64-linux-gnu_2.30-22_amd64.deb http://snapshot.debian.org/archive/debian/20180622T211149Z/pool/main/b/binutils/binutils-x86-64-linux-gnu_2.30-22_amd64.deb \ + && curl -s -o binutils-common_2.30-22_amd64.deb http://snapshot.debian.org/archive/debian/20180622T211149Z/pool/main/b/binutils/binutils-common_2.30-22_amd64.deb \ + && dpkg -i *binutils*.deb + COPY ./docker-entrypoint.sh / ENTRYPOINT ["/docker-entrypoint.sh"] diff --git a/docker/stable/Dockerfile b/docker/stable/Dockerfile index 4a2a968b..7377fad3 100644 --- a/docker/stable/Dockerfile +++ b/docker/stable/Dockerfile @@ -53,6 +53,15 @@ RUN curl -s https://s3.amazonaws.com/download.draios.com/DRAIOS-GPG-KEY.public | RUN rm -df /lib/modules \ && ln -s $SYSDIG_HOST_ROOT/lib/modules /lib/modules +# debian:unstable head contains binutils 2.31, which generates +# binaries that are incompatible with kernels < 4.16. So manually +# forcibly install binutils 2.30-22 instead. +RUN curl -s -o binutils_2.30-22_amd64.deb http://snapshot.debian.org/archive/debian/20180622T211149Z/pool/main/b/binutils/binutils_2.30-22_amd64.deb \ + && curl -s -o libbinutils_2.30-22_amd64.deb http://snapshot.debian.org/archive/debian/20180622T211149Z/pool/main/b/binutils/libbinutils_2.30-22_amd64.deb \ + && curl -s -o binutils-x86-64-linux-gnu_2.30-22_amd64.deb http://snapshot.debian.org/archive/debian/20180622T211149Z/pool/main/b/binutils/binutils-x86-64-linux-gnu_2.30-22_amd64.deb \ + && curl -s -o binutils-common_2.30-22_amd64.deb http://snapshot.debian.org/archive/debian/20180622T211149Z/pool/main/b/binutils/binutils-common_2.30-22_amd64.deb \ + && dpkg -i *binutils*.deb + COPY ./docker-entrypoint.sh / ENTRYPOINT ["/docker-entrypoint.sh"]