ansible-installer - The easiest way to install Invoice Ninja!
This is a crude set of ansible roles that will take a clean Ubuntu (16.04 LTS was used for testing) server and install Invoice Ninja and all of its dependencies.
Steps to install
First you need to ensure python and ssh are installed on the target Ubuntu machine.
sudo apt-get install python ssh
Copy your public SSH key onto the target server - on Mac this can be found here:
The target location will be
**Note this must be for a non-root user, use
adduseron the target machine to create a user
**You will also need to ensure this user is part of the sudo group
usermod -aG sudo username
On your local machine install ansible (This script was tested with ansible 2.5)
brew install ansible
Create a host file for ansible on your local machine
sudo vim /etc/ansible/hosts
Host file should look like this
Install the required roles
ansible-galaxy install jdauphant.nginx
ansible-galaxy install stackbuilders.certbot
Configure variables in vars/vars.yml
# sudo user on target machine user: david # target machine DB credentials db_user: invoiceninja db_password: adminpwd db_name: invoiceninja # lets encrypt email address letsencrypt_email: '' # web address ie: example.com server_name: '' # you can also change the repo branch, default is set to master git_branch: 'master'
Run the playbook and wait for it to complete
ansible-playbook localvm.yml --ask-become
- I am by no means an expert with ansible, if you see an issue, please PR.
Other ansible resources
- If this script doesn't fit your needs, check out the following ansible roles that are designed for Invoice Ninja