Docker-in-Docker + OVS + ryu + pipework Superpack
2.7K
This container helps you connect Docker-in-Docker to Open vSwitch (-in-Docker) with ryu via pipework.
Available on Docker Hub: osrg/dind-ovs-ryu
$ sudo modprobe openvswitch
$ docker run --privileged -t -i -e LOG=file --rm osrg/dind-ovs-ryu
* /etc/openvswitch/conf.db does not exist
* Creating empty database /etc/openvswitch/conf.db
* Starting ovsdb-server
* Configuring Open vSwitch system IDs
* Starting ovs-vswitchd
* Enabling remote OVSDB managers
Assigned 192.168.42.254 to ovsbr0
root@docker:/# ryu-manager YOUR_RYU_APP
root@docker:/# docker run -itd -h dind1 --name dind1 busybox
root@docker:/# pipework ovsbr0 dind1 192.168.42.101/24
root@docker:/# docker run -itd -h dind2 --name dind2 busybox
root@docker:/# pipework ovsbr0 dind2 192.168.42.102/24
root@docker:/# docker exec -it dind1 sh
/ # ping -c 3 192.168.42.102
PING 192.168.42.102 (192.168.42.102): 56 data bytes
64 bytes from 192.168.42.102: seq=0 ttl=64 time=0.201 ms
64 bytes from 192.168.42.102: seq=1 ttl=64 time=0.056 ms
64 bytes from 192.168.42.102: seq=2 ttl=64 time=0.094 ms
--- 192.168.42.102 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 0.056/0.117/0.201 ms
/ #
You can add a few optional variables to docker like docker -e VAR_NAME=VAR_VALUE.
OVSBR0_IP: IPv4 address assigned to ovsbr0 bridge. default="192.168.42.254".OVSBR0_NETMASK: netmask of ovsbr0. default="24".OVSBR0_PROTO: OpenFlow protocol of ovsbr0. default="OpenFlow13".Content type
Image
Digest
sha256:4e23b408f…
Size
274.3 MB
Last updated
about 9 years ago
docker pull osrg/dind-ovs-ryu