Sock Shop Docker Compose & Weave

The Weave Demo application is packaged using a Docker Compose file.


In this version we create several isolated networks using the Weave Docker plugin and use Weave’s DNS support.


git clone
cd microservices-demo
curl -sSL | sh
apt-get install -yq python-pip build-essential python-dev
pip install docker-compose
curl -L -o /usr/local/bin/weave
chmod a+x /usr/local/bin/weave

(Optional) Launch Weave Scope or Weave Cloud

Weave Scope (local instance)

sudo curl -L -o /usr/local/bin/scope
sudo chmod a+x /usr/local/bin/scope
scope launch

Weave Cloud (hosted platform). Get a token by registering here.

sudo curl -L -o /usr/local/bin/scope
sudo chmod a+x /usr/local/bin/scope
scope launch --service-token=<token>

Provision infrastructure

weave launch
docker-compose -f deploy/docker-compose-weave/docker-compose.yml up -d

Run tests

There’s a load test provided as a service in this compose file. For more information see Load Test. It will run when the compose is started up, after a delay of 60s. This is a load test provided to simulate user traffic to the application. This will send some traffic to the application, which will form the connection graph that you view in Scope or Weave Cloud.

Cleaning up

docker-compose -f deploy/docker-compose-weave/docker-compose.yml down
weave stop