From b4cba71eaa1d2c20f82ae228fdf1fc73cf86b259 Mon Sep 17 00:00:00 2001 From: Justin Cormack Date: Mon, 19 Dec 2016 17:54:01 +0000 Subject: [PATCH] Set an exclude pattern when untarring images This is a bit cleaner than deleting files after. Signed-off-by: Justin Cormack --- alpine/containers/binfmt/Makefile | 9 ++++++--- alpine/containers/rng-tools/Makefile | 9 ++++++--- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/alpine/containers/binfmt/Makefile b/alpine/containers/binfmt/Makefile index 610560568..60425b948 100644 --- a/alpine/containers/binfmt/Makefile +++ b/alpine/containers/binfmt/Makefile @@ -7,6 +7,10 @@ default: rootfs $(QEMU_BINARIES): docker run --rm --net=none $(QEMU_IMAGE) tar cf - -C /usr/bin $@ | tar xf - +EXCLUDE=--exclude .dockerenv --exclude Dockerfile \ + --exclude dev/console --exclude dev/pts --exclude dev/shm \ + --exclude etc/hostname --exclude etc/hosts --exclude etc/mtab --exclude etc/resolv.conf + rootfs: Dockerfile main.go 00_moby.conf $(QEMU_BINARIES) mkdir -p $@ BUILD=$$( tar cf - $^ | docker build -q - ) && \ @@ -16,9 +20,8 @@ rootfs: Dockerfile main.go 00_moby.conf $(QEMU_BINARIES) [ -n "$$IMAGE" ] && \ echo "Built $$IMAGE" && \ CONTAINER=$$( docker create $$IMAGE /dev/null ) && \ - docker export $$CONTAINER | tar -xf - -C $@ && \ - docker rm $$CONTAINER && \ - ( cd $@ && rm -rf .dockerenv Dockerfile dev/* etc/hostname etc/hosts etc/mtab etc/resolv.conf ) + docker export $$CONTAINER | tar -xf - -C $@ $(EXCLUDE) && \ + docker rm $$CONTAINER clean: rm -rf rootfs $(QEMU_BINARIES) diff --git a/alpine/containers/rng-tools/Makefile b/alpine/containers/rng-tools/Makefile index 98ebae970..cb2daef2f 100644 --- a/alpine/containers/rng-tools/Makefile +++ b/alpine/containers/rng-tools/Makefile @@ -7,6 +7,10 @@ default: rootfs $(TINI_BINARY): Dockerfile docker run --rm --net=none $(TINI_IMAGE) tar cf - -C /bin $@ | tar xf - +EXCLUDE=--exclude .dockerenv --exclude Dockerfile \ + --exclude dev/console --exclude dev/pts --exclude dev/shm \ + --exclude etc/hostname --exclude etc/hosts --exclude etc/mtab --exclude etc/resolv.conf + rootfs: Dockerfile fix-textrels-on-PIC-x86.patch sha256sums $(TINI_BINARY) mkdir -p $@ BUILD=$$( tar cf - $^ | docker build -q - ) && \ @@ -16,9 +20,8 @@ rootfs: Dockerfile fix-textrels-on-PIC-x86.patch sha256sums $(TINI_BINARY) [ -n "$$IMAGE" ] && \ echo "Built $$IMAGE" && \ CONTAINER=$$( docker create $$IMAGE /dev/null ) && \ - docker export $$CONTAINER | tar -xf - -C $@ && \ - docker rm $$CONTAINER && \ - ( cd $@ && rm -rf .dockerenv Dockerfile dev/* etc/hostname etc/hosts etc/mtab etc/resolv.conf ) + docker export $$CONTAINER | tar -xf - -C $@ $(EXCLUDE) && \ + docker rm $$CONTAINER clean: rm -rf rootfs $(TINI_BINARY)