diff options
Diffstat (limited to 'docker/utils.sh')
-rwxr-xr-x | docker/utils.sh | 63 |
1 files changed, 0 insertions, 63 deletions
diff --git a/docker/utils.sh b/docker/utils.sh deleted file mode 100755 index 7b4674752..000000000 --- a/docker/utils.sh +++ /dev/null @@ -1,63 +0,0 @@ -#!/bin/bash - -# Creates named container from given image. -# -# $1 - container name -# $2 - image name -# -function create_container { - container_name=$1 - image_name=$2 - echo "Creating $container_name from $image_name" - docker run -dt --privileged --name=$container_name $image_name -} - -# Starts container -# and adds container's network namespace -# to the linux runtime data (/var/run). -# -# $1 - container name -# -# See: -# https://platform9.com/blog/container-namespaces-deep-dive-container-networking/ -# -function start_container { - container_name=$1 - echo "Starting container $container_name" - - # Remove namespace if it was present - ip netns del $container_name - - # Start container - docker start $container_name - - # Make container's network namespaces accessible using ip netns - pid=$(docker inspect -f '{{.State.Pid}}' $container_name) - ln -s /proc/$pid/ns/net /var/run/netns/$container_name - echo "Container $container_name started sucessfully (pid=$pid)" -} - -# Links two containers using a veth pair. -# -# $1 - name of the container A -# $2 - name of the veth endpoint that belongs to A -# $3 - name of the veth endpoint that belongs to B -# $4 - name of the container B -# -function create_link { - container1=$1 - if1=$2 - if2=$3 - container2=$4 - echo "Creating link from $container1($if1) to $container2($if2)" - ip link add $if1 type veth peer name $if2 - - # Move veth endpoints to corresponding namespaces - ip link set $if1 netns $container1 - ip link set $if2 netns $container2 - - # Bring interfaces up - ip netns exec $container1 ip link set $if1 up - ip netns exec $container2 ip link set $if2 up - echo "Link created successfully" -} |