Skip to content
A demo of Weave and Flocker as official Docker plugins using compose and swarm
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Unofficial Plugins Demo

Using Flocker and Weave with the Docker platform

Watch the video


Then come back here to try it yourself with Vagrant!

Vagrant Quickstart

You will also need Vagrant 1.7.2 and Virtualbox installed.


$ git clone
$ cd demo
$ make -C vagrantrunner

This will use pre-packed boxes that has everything installed - start 2 VMs and then install the Flocker and Weave plugins.

This box uses the Docker experimental binary and patched versions of Swarm and Compose:

Once the boxes have started - you should create the weave network on each of the nodes and start the swarm master:

$ cd vagrantrunner
$ bash
$ bash
$ bash

Then in another shell, SSH into the master:

$ cd vagrantrunner
$ vagrant ssh master

Then we check that swarm is working and that the plugins are running, then bring up the app using docker-compose:

master# export DOCKER_HOST=localhost:2378
master# docker info
master# cd /vagrant/app
master# docker-compose up -d
master# docker ps -a | grep redis

Then we start the HTTP load balancer that opens up the open to the outside world:

master# cd /vagrant
master# bash

Now we can load the app in a browser:

Click around and add some Docker logos onto the screen.

Now we migrate the stateful database to another node.

master# docker-compose stop
master# docker-compose rm -f
master# vim docker-compose.yml # switch "runner" and "master" in the redis constraint
master# docker-compose up -d
master# docker ps -a | grep redis

Observe that the database is both still accessible (thanks to Weave) and still has its data (thanks to Flocker).

You can’t perform that action at this time.