Provisioner is a simple minimal wrapper that exposes Ansible over a RESTful API. It’s similar in some ways to Ansible’s commercial Tower service.

Want to give it a spin? Check out the Getting Started guide.


Here’s what’s going on in the demo:

  • Provisioner is started via docker-compose
  • We check on the Vagrant boxes (the targets)
  • Using our python library, we create a ping job
  • We verify that the ping job was executed in the Docker logs
  • We query the status from the task using the API


The tool was developed for Cloud.net to bootstrap remote servers over SSH.

Provisioner also comes with a large number of pre-configured ‘apps’ (referred to as ‘roles’). These apps include popular tools, such as WordPress, Drupal or PostgreSQL.

Most of these apps are deployed inside Docker containers on the host, and have been configured such that you can deploy multiple apps on a single server. For instance, you can have https://drupal.mydomain.com and https://wordpress.mydomain.com served from the same server.

Also, thanks to Let’s Encrypt, we’re able to automatically create valid SSL certificates on the remote host.