Skip to content

Ansible playbook(s) to get my server just how I like it

Notifications You must be signed in to change notification settings

strong-code/server-playbook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

server-playbook

Ansible playbook(s) to get my server just how I like it

Task list

Task Description Notes
users Sets up user accounts, groups, and permissions
packages Desired package/PPA/bin inclusion/exclusion Eventually, non-standard PPA installs will get too big for this file (e.g. exa or asdf). Should think about subtasks/ dir
dotfiles Clones and symlinks the dotfiles repo Symlinks systemd service files, so this should always run before service install tasks
docker Install Docker engine and supporting components Responsible for shared Docker config such as prom-grafana bridge network
irssi Install irssi dotfiles task will handle symlinking ~/.irssi dir
prometheus Install and configure Prometheus container and local node_exporter
grafana Install and configure Grafana container
certbot Install certbot and install nginx certs for strongco.de and start.strongco.de Email and domains are hardcoded. Safely idempotent. certbot renew is handled by crontab from dotfiles
runner Download Github actions-runner package Runner requires time-sensitive token to configure - see task note

Testing locally with Vagrant

Ansible will run with local connection as the Vagrant provisioner, so just

$ vagrant up

Running against temp test server

Override remote host IP with

$ ansible-playbook main.yml --extra-vars "var_host=<ip>"

DNS

DNS records are managed under iwantmyname.com with cloud firewall rules on DO

About

Ansible playbook(s) to get my server just how I like it

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages