Created
September 12, 2016 11:36
-
-
Save tgeorgiev/b18a3e0d02b0efec09a7341f6d12ec16 to your computer and use it in GitHub Desktop.
Script to reproduce docker network removal issue: network has active endpoints
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
# for more info see https://github.com/docker/docker/issues/19261 | |
# Provide values to connect to nodes | |
cert="client.pem" | |
key="client-key.pem" | |
connectionstringnode1="-H=node1:2376 --tls --tlscert=$cert --tlskey=$key" | |
connectionstringnode2="-H=node2:2376 --tls --tlscert=$cert --tlskey=$key" | |
networkname="test-net" | |
containerspernode=4 | |
echo "Creating network $networkname" | |
docker $connectionstringnode1 network create --driver overlay $networkname | |
echo "Creating containers" | |
for nodei in {1..2} | |
do | |
for containeri in `eval echo {1..$containerspernode}` | |
do | |
connectionstringvar="connectionstringnode${nodei}" | |
connectionstring=${!connectionstringvar} | |
containername="alp${nodei}${containeri}" | |
docker $connectionstring run -itd --name $containername --network $networkname alpine sh | |
done | |
done | |
echo "Deleting containers (parallel)" | |
pids="" | |
for nodei in {1..2} | |
do | |
for containeri in `eval echo {1..$containerspernode}` | |
do | |
connectionstringvar="connectionstringnode${nodei}" | |
connectionstring=${!connectionstringvar} | |
containername="alp${nodei}${containeri}" | |
docker $connectionstring rm -fv $containername & | |
pids="$pids $!" | |
done | |
done | |
wait $pids | |
# Just for incase sleep 5 seconds, although it does not really matter | |
sleep 5 | |
echo "Inspecting $networkname" | |
docker $connectionstringnode1 network inspect $networkname | |
echo "Deleting network $networkname" | |
docker $connectionstringnode1 network rm $networkname |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment