Ansible configuration for $HOST
This repository configures a server based on Ubuntu 20.04
- Ansible files for deployment
- Vagrantfile for local testing
Local VM for testing using Vagrant
You can spin up a local staging VM and provision it using Vagrant and VirtualBox.
Test the playbook before tagging/deploying it. See the
|Spin up a staging VM and provision it.
|Provision (redo) a running VM with the Ansible playbook.
vagrant destroy -f
|Destroy the VM completely
By default, it uses two cores with 2GB RAM, which can be overwritten with the environment variables
Provisioning the target system with Ansible
You need the secret for the vault to decrypt the secrets. Editing the secrets can be done via
To provision the actual server completely:
Each role has an ansible-tag with the same name. You can run individual roles using the tags, e.g.:
ansible-playbook site.yml --tags "traefik"
This project should contain at least these roles:
- responsible for backups of vital persisted data of a hosts services
- the united usership of the server and their representative ssh keys and permissions
- Some bootstrap stuff like logrotate, etc.
- responsible for provisioning a docker environment
- responsible for providing traefik and its configuration
- configures a container which is responsible for autoamtically updating other containers