forked from blockchainvn/hyperledger-fabric-k8s
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker_loader.sh
58 lines (47 loc) · 1.05 KB
/
docker_loader.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#!/bin/bash
SHARE_FOLDER=/opt/share
IMAGES_SERVER=$SHARE_FOLDER/images/server
removeImages() {
sudo docker rmi $(docker images -q)
}
getImageField() {
local imageId=$1
local field=$2
: ${imageId:? reuired}
: ${field:? required}
docker images --no-trunc|sed -n "/${imageId}/ s/ \+/ /gp"|cut -d" " -f $field
}
getImageName() {
getImageField $1 1
}
getImageTag() {
getImageField $1 2
}
saveImages() {
local ids=$(docker images -q)
local name safename tag
for id in $ids; do
name=$(getImageName $id)
tag=$(getImageTag $id)
file=$IMAGES_SERVER/$name.$tag.tar
if [ ! -f $file ]; then
echo "save $file"
sudo mkdir -p $(dirname $file)
echo "Command: docker save -o $file $name:$tag"
(time docker save -o $file $name:$tag) 2>&1|grep real
else
echo "$file exist"
fi
done
chmod 755 $IMAGES_SERVER -R
}
loadImages() {
local name safename noextension tag
for image in $(find $IMAGES_SERVER -name \*.tar); do
echo load $image
echo
docker load -i $image
done
}
saveImages
# loadImages