Hi everyone,

We're doing a project here at Berkeley which requires OVS/Docker
integration on CoreOS.  Melvin Walls (an undergrad working with me here)
did the heavy lifting to get that setup, so I thought I'd forward it to the
list in case there's interest.

The first (and most important) step, is to create a container of OVS.
Melvin has done so here: https://hub.docker.com/r/melvinw/ubuntu-ovs/  It'd
be really cool if  the community blessed one per release and put it on
hub.docker.com.  They have a way to bless certain containers as "official"
which would be awesome.

Anyways once that's up getting OVS running is pretty easy:  It's a bit ugly
but it works:

mkdir -p /etc/ovs
    mkdir -p /var/run/ovs
    sudo modprobe openvswitch
    docker pull melvinw/ubuntu-ovs
    docker run -d \
        --privileged --net=host --name=ovsdb \
        -v /var/run/ovs:/usr/local/var/run/openvswitch:rw \
        -v /etc/ovs:/usr/local/etc/openvswitch:rw \
        melvinw/ubuntu-ovn /bin/bash -c " \
        mkdir -p /usr/local/var/log/openvswitch \
        /usr/local/var/lib/openvswitch \
        /usr/local/var/lib/openvswitch/pki; \
        ovsdb-tool create /usr/local/etc/openvswitch/conf.db \
        /usr/local/share/openvswitch/vswitch.ovsschema; \
        ovsdb-server \
        --remote=punix:/usr/local/var/run/openvswitch/db.sock \
        --remote=db:Open_vSwitch,Open_vSwitch,manager_options \
        --log-file=/usr/local/var/log/openvswitch/ovsdb-server.log \
        --pidfile"

    docker run -d \
        --privileged --net=host --name=ovs \
        -v /var/run/ovs:/usr/local/var/run/openvswitch:rw \
        -v /etc/ovs:/usr/local/etc/openvswitch:rw \
        melvinw/ubuntu-ovn /bin/bash -c " \
        mkdir -p /usr/local/var/log/openvswitch \
        /usr/local/var/lib/openvswitch \
        /usr/local/var/lib/openvswitch/pki; \
        ovs-vsctl --no-wait init; \
        ovs-vswitchd --pidfile \
        --log-file=/usr/local/var/log/openvswitch/ovs-vswitchd.log"

The usual commands (ovs-vsctl, etc...) can be run by prefixing them with
`docker exec ovs`

Anyways, I hope that's helpful/interesting.

Ethan
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to