curl -SOL https://github.com/Metaswitch/calico-docker/releases/download/v0.5.4/calicoctl
chmod +x calicoctl
sudo mv calicoctl /usr/local/bin/
curl -SOL https://experimental.docker.com/builds/Linux/x86_64/docker-latest
chmod +x docker-latest
sudo mv docker-latest /usr/local/bin/
sudo docker-latest daemon
docker-latest run -d -p 8400:8400 -p 8500:8500 -p 8600:53/udp -h node1 progrium/consul -server -bootstrap
docker-latest rm etcd
docker-latest run -d -v /usr/share/ca-certificates/:/etc/ssl/certs -p 4001:4001 -p 2380:2380 -p 2379:2379 \
--name etcd quay.io/coreos/etcd:v2.0.8 \
-name etcd0 \
-advertise-client-urls http://${HostIP}:2379,http://${HostIP}:4001 \
-listen-client-urls http://0.0.0.0:2379,http://0.0.0.0:4001 \
-initial-advertise-peer-urls http://${HostIP}:2380 \
-listen-peer-urls http://0.0.0.0:2380 \
-initial-cluster-token etcd-cluster-1 \
-initial-cluster etcd0=http://${HostIP}:2380 \
-initial-cluster-state new
sudo calicoctl node
docker-latest rm -f workload-A
docker-latest run --publish-service srvA.net1.calico --name workload-A -tid alpine sh
docker-latest rm -f workload-B
docker-latest run --publish-service srvB.net2.calico --name workload-B -tid alpine sh
docker-latest rm -f workload-C
docker-latest run --publish-service srvC.net1.calico --name workload-C -tid alpine sh
docker-latest rm -f workload-D
docker-latest run --publish-service srvD.net2.calico --name workload-D -tid alpine sh
docker-latest network ls
docker-latest exec -ti workload-D sh
ip addr
ip route
cat /etc/hosts
docker-latest rm -f workload-B
docker-latest service unpublish srvB.net2
docker-latest run --publish-service srvB.net2.calico --name workload-B -tid alpine sh
docker-latest exec -ti workload-D cat /etc/hosts
# > 192.168.0.2 srvB
docker-latest rm -f workload-B
docker-latest service unpublish srvB.net2
docker-latest run --publish-service srvE.net2.calico --name workload-E -tid alpine sh
docker-latest run --publish-service srvB.net2.calico --name workload-B -tid alpine sh
docker-latest exec -ti workload-D cat /etc/hosts
# > 192.168.0.5 srvB
Also see this: tomdee/calico-demo