PaaS is a simple application that's useful for testing out features of Docker Datacenter.
PaaS is comprised of two images:
- training/paas is a front-end Python Flask container that serves up random images of housepets, depending on the given configuration
- consul is a back-end KV store that stores the number of visits that the web services receive. It's configured to bootstrap itself with 3 replicas so that we have fault tolerant persistence.
Running a Single Container, Stateless App
$ docker run -it -p 5000:5000 training/paas
Running PaaS on Swarm & UCP in Development
Docker Swarm can easily be setup to run applications on a single developer laptop. The full app can be brought up to run in the same way it would run in production. We use a compose v3 file to deploy a fully fault tolerant frontend and backend, along with the configurations, secrets, and networks required for the application to run.
This is the full architecture that is deployed when using pets-dev-compose.yml.
$ git clone https://github.com/docker-training/docker-paas ~/docker-paas $ docker stack deploy -c pets-dev-compose.yml paas