[UPDATE] - backup restore docker images

This commit is contained in:
2022-10-25 15:06:19 +02:00
parent 661f3808ec
commit 7129a0849a
5 changed files with 64 additions and 12 deletions
+34 -1
View File
@@ -1,3 +1,4 @@
#!/bin/bash
TestEnv() {
Check=$(which $1 2> /dev/null)
@@ -34,7 +35,7 @@ LinkESL() {
help () {
echo "
$0 [image-gen/image-repo/link/repo/gen/run-repo/run-gen]
$0 [image-gen/image-repo/link/repo/gen/run-repo/run-gen/import-image/save-image]
* $(tput setaf 3)image-gen $(tput sgr0): Generate docker image for esl compilator
* $(tput setaf 3)image-repo $(tput sgr0): Generate docker image for repository sync
@@ -43,6 +44,8 @@ $0 [image-gen/image-repo/link/repo/gen/run-repo/run-gen]
* $(tput setaf 4)gen $(tput sgr0): start docker compose and generarte esl
* $(tput setaf 2)run-gen $(tput sgr0): Connect and run bash on instance gen
* $(tput setaf 2)run-repo $(tput sgr0): Connect and run bash on instance repo
* $(tput setaf 6)import-image $(tput sgr0): Import last backuped docker image in ./images/
* $(tput setaf 6)save-image $(tput sgr0): backup docker image in ./images/
"
exit
@@ -147,6 +150,36 @@ DockerComposeRun () {
}
DockerSave () {
for Image in $(docker image ls | grep -E "^esl-repo|^esl-gen" | awk '{print $1":"$2}')
do
EslImage=$(echo $Image | cut -d":" -f1)
EslImageVersion=$(echo $Image | cut -d":" -f2)
echo -ne "Save $Image : "
docker save $Image | gzip > $(dirname $0)/images/${EslImageVersion}-$(date +%Y%m%d)_$(echo $Image | sed 's/:/-/g').gz
[[ "$?" -eq 0 ]] && echo OK || echo FAILED
done
}
DockerImport () {
if [[ $(ls -1 images | grep "esl-"| wc -l) -eq 0 ]]
then
echo "Nothing todo ..."
else
for Type in repo gen
do
GetImage=$(ls -1 images | grep $Type |sort -r -n -t"-" -k1,2 | head -n1)
echo -ne "Import $GetImage : "
zcat images/$GetImage | docker load &> /dev/null
[[ "$?" -eq 0 ]] && echo OK || echo FAILED
done
fi
}
#GenAll () {
# DockerGen gen