From 8bcb1537ce45bf323a88ba77c4c47d5d425d72a7 Mon Sep 17 00:00:00 2001 From: rs-mrichmond Date: Wed, 28 Jun 2017 10:26:52 -0600 Subject: [PATCH] Use pigz for (de)compression Why: pigz is a parallelized gzip greatly reduced compression time versus single core bound gzip --- backup/Dockerfile | 1 + backup/files/bin/backup | 4 ++-- backup/files/bin/restore | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/backup/Dockerfile b/backup/Dockerfile index 89b4808..a1eee15 100644 --- a/backup/Dockerfile +++ b/backup/Dockerfile @@ -1,6 +1,7 @@ FROM rackspace/rack:1.1.1 RUN apk add --update --no-cache bash +RUN apk add --update --no-cache pigz COPY files/bin/ /usr/bin/ diff --git a/backup/files/bin/backup b/backup/files/bin/backup index 4738560..881c4cf 100755 --- a/backup/files/bin/backup +++ b/backup/files/bin/backup @@ -32,7 +32,7 @@ usage () { echo " -h, --help Show help information" echo " -s, --source Path to source directory" echo " --stdout Use stdout instead of Cloud Files" - echo " -z, --zip Use gzip to compress archive" + echo " -z, --zip Use pigz to output gzip compressed archive" echo " " } @@ -111,7 +111,7 @@ if ! ${STDOUT}; then fi if ${ZIP}; then - tar -czf - -C ${SOURCE} . | output_archive + tar -cf - -C ${SOURCE} . | pigz -c | output_archive else tar -cf - -C ${SOURCE} . | output_archive fi diff --git a/backup/files/bin/restore b/backup/files/bin/restore index 63e2e27..2f1570e 100755 --- a/backup/files/bin/restore +++ b/backup/files/bin/restore @@ -22,7 +22,7 @@ usage () { echo " -h, --help Show help information" echo " -o, --object Name of archive object in a container" echo " --stdin Use stdin instead of Cloud Files" - echo " -z, --zip Use gzip to uncompress archive" + echo " -z, --zip Use pigz to uncompress gzip archive" echo " " } @@ -84,7 +84,7 @@ fi if ${ZIP}; then echo "Reading and unzipping archive..." - get_archive | tar -xzf - -C ${DESTINATION} + get_archive | unpigz -c | tar -xf - -C ${DESTINATION} else echo "Reading and extracting archive..." get_archive | tar -xf - -C ${DESTINATION}