Using Vagrant

Vagrant can be used for osctrl local development. Execute vagrant up to create a local virtual machine running Ubuntu 18.04. Once it has finished deploying, osctrl will be ready to be used and you can access it following the instructions in the terminal.

Take a look at the Vagrantfile to understand how the local vagrant machine is created and to modify it to better fit your needs. It will install and configure all components of osctrl using the provision.sh script. The full command used looks as follows:

./deploy/provision.sh --nginx --postgres -E --metrics --tls-hostname "10.10.10.6" --admin-hostname "10.10.10.6" --password "admin"

According to the usage of the deployment script, the command above will:

  • --nginx: Deploy the nginx that is going to be used as TLS termination,
  • --postgres: Deploy the backend component (PostgreSQL),
  • -E: Enroll itself in osctrl,
  • --metrics: Deploy the metrics component (Grafana),
  • --tls-hostname "10.10.10.6": Use 10.10.10.6 as hostname for osctrl-tls,
  • --admin-hostname "10.10.10.6": Use 10.10.10.6 as hostname for osctrl-admin,
  • --password "admin": Use admin as the administrative user (admin) password.

Some options will have default values. For example -m will be dev as mode which means that provision will run in development mode and certificate will be self-signed, or -p with all parts provisioned, admin and tls.

Once it is done, osctrl will be ready to be used using a private IP, and the admin service will be accesible at https://10.10.10.6:8443/ with the credentials admin/admin.


Here is the whole output of a successfully executed vagrant up command: