From 1cb01dfac9421614da347ad4659e6f62446f62b8 Mon Sep 17 00:00:00 2001 From: Jamie Hewland Date: Thu, 3 May 2018 22:40:08 +0200 Subject: [PATCH] Alpine: Don't install libraries for tkinter * It is rarely used in a container * The Debian slim images also don't include these libraries * Requires >12MB of libraries (x11, freetype...) * If needed, the required libraries can be installed and it should still work --- 2.7/alpine3.6/Dockerfile | 5 ++++- 2.7/alpine3.7/Dockerfile | 5 ++++- 3.4/alpine3.7/Dockerfile | 5 ++++- 3.5/alpine3.7/Dockerfile | 5 ++++- 3.6/alpine3.6/Dockerfile | 5 ++++- 3.6/alpine3.7/Dockerfile | 5 ++++- 3.7/alpine3.7/Dockerfile | 5 ++++- Dockerfile-alpine.template | 5 ++++- 8 files changed, 32 insertions(+), 8 deletions(-) diff --git a/2.7/alpine3.6/Dockerfile b/2.7/alpine3.6/Dockerfile index 2d86a83d7..8b0c39566 100644 --- a/2.7/alpine3.6/Dockerfile +++ b/2.7/alpine3.6/Dockerfile @@ -68,7 +68,10 @@ RUN set -ex \ && make install \ \ && runDeps="$( \ - scanelf --needed --nobanner --format '%n#p' --recursive /usr/local \ + scanelf --needed --nobanner --format '%f:%n#p' --recursive /usr/local \ +# don't install libraries for tkinter as it is rarely used inside a container + | grep -v tkinter \ + | cut -d ':' -f 2 \ | tr ',' '\n' \ | sort -u \ | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \ diff --git a/2.7/alpine3.7/Dockerfile b/2.7/alpine3.7/Dockerfile index a8aedd2a6..aed54722d 100644 --- a/2.7/alpine3.7/Dockerfile +++ b/2.7/alpine3.7/Dockerfile @@ -70,7 +70,10 @@ RUN set -ex \ && make install \ \ && runDeps="$( \ - scanelf --needed --nobanner --format '%n#p' --recursive /usr/local \ + scanelf --needed --nobanner --format '%f:%n#p' --recursive /usr/local \ +# don't install libraries for tkinter as it is rarely used in a container + | grep -v tkinter \ + | cut -d ':' -f 2 \ | tr ',' '\n' \ | sort -u \ | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \ diff --git a/3.4/alpine3.7/Dockerfile b/3.4/alpine3.7/Dockerfile index eed4994f9..8e8d5df26 100644 --- a/3.4/alpine3.7/Dockerfile +++ b/3.4/alpine3.7/Dockerfile @@ -78,7 +78,10 @@ RUN set -ex \ && make install \ \ && runDeps="$( \ - scanelf --needed --nobanner --format '%n#p' --recursive /usr/local \ + scanelf --needed --nobanner --format '%f:%n#p' --recursive /usr/local \ +# don't install libraries for tkinter as it is rarely used inside a container + | grep -v tkinter \ + | cut -d ':' -f 2 \ | tr ',' '\n' \ | sort -u \ | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \ diff --git a/3.5/alpine3.7/Dockerfile b/3.5/alpine3.7/Dockerfile index b38c4027f..1b6dcfd8b 100644 --- a/3.5/alpine3.7/Dockerfile +++ b/3.5/alpine3.7/Dockerfile @@ -78,7 +78,10 @@ RUN set -ex \ && make install \ \ && runDeps="$( \ - scanelf --needed --nobanner --format '%n#p' --recursive /usr/local \ + scanelf --needed --nobanner --format '%f:%n#p' --recursive /usr/local \ +# don't install libraries for tkinter as it is rarely used inside a container + | grep -v tkinter \ + | cut -d ':' -f 2 \ | tr ',' '\n' \ | sort -u \ | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \ diff --git a/3.6/alpine3.6/Dockerfile b/3.6/alpine3.6/Dockerfile index 6efbff7c2..833b86b00 100644 --- a/3.6/alpine3.6/Dockerfile +++ b/3.6/alpine3.6/Dockerfile @@ -78,7 +78,10 @@ RUN set -ex \ && make install \ \ && runDeps="$( \ - scanelf --needed --nobanner --format '%n#p' --recursive /usr/local \ + scanelf --needed --nobanner --format '%f:%n#p' --recursive /usr/local \ +# don't install libraries for tkinter as it is rarely used inside a container + | grep -v tkinter \ + | cut -d ':' -f 2 \ | tr ',' '\n' \ | sort -u \ | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \ diff --git a/3.6/alpine3.7/Dockerfile b/3.6/alpine3.7/Dockerfile index e6ea57254..194c86ca5 100644 --- a/3.6/alpine3.7/Dockerfile +++ b/3.6/alpine3.7/Dockerfile @@ -80,7 +80,10 @@ RUN set -ex \ && make install \ \ && runDeps="$( \ - scanelf --needed --nobanner --format '%n#p' --recursive /usr/local \ + scanelf --needed --nobanner --format '%f:%n#p' --recursive /usr/local \ +# don't install libraries for tkinter as it is rarely used inside a container + | grep -v tkinter \ + | cut -d ':' -f 2 \ | tr ',' '\n' \ | sort -u \ | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \ diff --git a/3.7/alpine3.7/Dockerfile b/3.7/alpine3.7/Dockerfile index e49f25221..f2790dcf1 100644 --- a/3.7/alpine3.7/Dockerfile +++ b/3.7/alpine3.7/Dockerfile @@ -80,7 +80,10 @@ RUN set -ex \ && make install \ \ && runDeps="$( \ - scanelf --needed --nobanner --format '%n#p' --recursive /usr/local \ + scanelf --needed --nobanner --format '%f:%n#p' --recursive /usr/local \ +# don't install libraries for tkinter as it is rarely used inside a container + | grep -v tkinter \ + | cut -d ':' -f 2 \ | tr ',' '\n' \ | sort -u \ | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \ diff --git a/Dockerfile-alpine.template b/Dockerfile-alpine.template index 2f7bb8691..b13201abf 100644 --- a/Dockerfile-alpine.template +++ b/Dockerfile-alpine.template @@ -74,7 +74,10 @@ RUN set -ex \ && make install \ \ && runDeps="$( \ - scanelf --needed --nobanner --format '%n#p' --recursive /usr/local \ + scanelf --needed --nobanner --format '%f:%n#p' --recursive /usr/local \ +# don't install libraries for tkinter as it is rarely used inside a container + | grep -v tkinter \ + | cut -d ':' -f 2 \ | tr ',' '\n' \ | sort -u \ | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \