Download Docker. If you are on Mac or Windows, Docker Compose will be automatically installed. On Linux, make sure you have the latest version of Compose.
Run in this directory:
docker-compose up
```
The app will be running at [http://localhost:5000](http://localhost:5000), and the results will be at [http://localhost:5001](http://localhost:5001).
Alternately, if you want to run it on a [Docker Swarm](https://docs.docker.com/engine/swarm/), first make sure you have a swarm. If you don't, run:
```
docker swarm init
```
Once you have your swarm, in this directory run:
```
docker stack deploy --compose-file docker-stack.yml vote
```
Architecture
-------

* A Python webapp which lets you vote between two options
* A Redis queue which collects new votes
* A .NET worker which consumes votes and stores them in…
* A Postgres database backed by a Docker volume
* A Node.js webapp which shows the results of the voting in real time
Note
----
The voting application only accepts one vote per client. It does not register votes if a vote has already been submitted from a client.
Docker Run Commands
----
docker run -d --name=redis redis
docker run -d --name=vote -p 5000:80 --link redis:redis voting-app
docker run -d --name=db -e POSTGRES_HOST_AUTH_METHOD=trust postgres:9.4
docker run -d --name=result -p 5001:80 --link redis:redis --link db:db result-app
docker run -d --name=worker --link redis:redis --link db:db worker-app