diff --git a/docker/img2tar.sh b/docker/img2tar.sh new file mode 100644 index 0000000..f392a6f --- /dev/null +++ b/docker/img2tar.sh @@ -0,0 +1,24 @@ +#!/bin/bash +# +# This script imports a raw image into Docker consumeable tarball. It takes one +# arguments: the name of the image file + +usage() { + echo "usage: $(basename $0) " + exit 1 +} + +image="$1" + +if [[ -z $1 ]]; then + usage +fi + +mount="$(mktemp -d --tmpdir)" +mount -o loop "$image" "$mount" + +cd "$mount" +tar -cpSf - --acls --selinux --xattrs * | bzip2 > ${image}.tar.bz2 +cd - >& /dev/null +umount "$mount" +rmdir "$mount"