22
33set -eou pipefail
44
5+ # shellcheck disable=SC1091
6+ source /home/cloud-compose/profile.sh
7+
58# block metadata server from docker and non-root
69/sbin/iptables -I FORWARD -d 169.254.169.254/32 -i docker0 -j DROP
710/sbin/iptables -A OUTPUT -m owner ! --uid-owner 0 -d 169.254.169.254/32 -p tcp --dport 80 -j DROP
@@ -11,28 +14,27 @@ systemctl restart fluent-bit
1114systemctl restart docker
1215
1316# wait until our data-root /etc/docker/daemon.json setting are applied
14- until test -d /mnt/disks/data/docker/volumes ; do
15- echo " Waiting for docker volumes dir"
17+ until test -d /mnt/disks/data/docker/overlay2 ; do
18+ echo " Waiting for docker overlay2 dir"
1619 sleep 1
1720done
1821
19- # move volumes from docker's data root to our volumes disk
20- rm -rf /mnt/disks/data/ docker/volumes
21- ln -s /mnt/disks/volumes /mnt/disks/data/docker/volumes
22+ if [ ! -d /home/cloud-compose/. docker/cli-plugins ] ; then
23+ mkdir -p /home/cloud-compose/. docker/cli-plugins
24+ fi
2225
2326# since COS is read only FS, install docker compose/buildx in home directory
2427# and symlink to our data disk which can have executables
2528if [ ! -f " /home/cloud-compose/.docker/cli-plugins/docker-compose" ]; then
26- curl -sSL \
29+ retry_until_success curl -sSL \
2730 https://github.com/docker/compose/releases/download/v2.40.3/docker-compose-linux-x86_64 \
2831 -o /mnt/disks/data/docker-compose
2932 chmod o+x /mnt/disks/data/docker-compose
30- mkdir -p /home/cloud-compose/.docker/cli-plugins
3133 ln -sf /mnt/disks/data/docker-compose /home/cloud-compose/.docker/cli-plugins/docker-compose
3234fi
3335
3436if [ ! -f " /home/cloud-compose/.docker/cli-plugins/docker-buildx" ]; then
35- curl -sSL \
37+ retry_until_success curl -sSL \
3638 https://github.com/docker/buildx/releases/download/v0.30.1/buildx-v0.30.1.linux-amd64 \
3739 -o /mnt/disks/data/docker-buildx
3840 chmod o+x /mnt/disks/data/docker-buildx
0 commit comments