Thanks Ethan for the initiative.

A few comments:

1. Is there any reason you guys chose to keep ovsdb-server and
ovs-vswitchd into separate containers?
I think having atleast the ovsdb-server and ovs-vswitchd together in
the same container may make things easy.

2. You can also run your containers with --pid=host. That gives some advantages.

3. A startup script inside the container instead of loading so many
things in docker run command may also make it easier.


On Tue, Nov 10, 2015 at 2:36 PM, Ethan J. Jackson <[email protected]> 
wrote:
> 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
> [email protected]
> http://openvswitch.org/mailman/listinfo/dev
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev

Reply via email to