This role will install Shaarli, a minimalist bookmark manager and link sharing service, and optionally:
- apache webserver configuration and SSL/TLS certificates
- automatic local backups
- fail2ban login bruteforce prevention
- monitoring and log aggregation through netdata and rsyslog
- python client for the Shaarli API
- stack theme/template
See meta/main.yml
# playbook.yml
- hosts: my.CHANGEME.org
roles:
- nodiscc.xsrv.common # (optional) base server setup, hardening, firewall, bruteforce prevention
- nodiscc.xsrv.backup # (optional) automatic backups
- nodiscc.xsrv.monitoring # (optional) apache monitoring
- nodiscc.xsrv.apache # (required in the standard configuration) webserver, PHP interpreter and SSL certificates
- nodiscc.xsrv.shaarli
# required variables:
# host_vars/my.CHANGEME.org/my.CHANGEME.org.yml
shaarli_fqdn: "links.CHANGEME.org"
# ansible-vault edit host_vars/my.example.org/my.example.org.vault.yml
shaarli_username: "CHANGEME"
shaarli_password: "CHANGEME"
shaarli_password_salt: "CHANGEME"
shaarli_api_secret: "CHANGEME"
See defaults/main.yml for all configuration variables
Shaarli RSS can be accessed through:
See the included rsnapshot configuration for the backup role.
To restore backups, deploy the role and restore the data/
directory:
sudo rsync -avP /var/backups/rsnapshot/daily.0/localhost/var/www/links.CHANGEME.org/data /var/www/links.CHANGEME.org/
ModuleNotFoundError: No module named 'pip'
during python-shaarli-client installation: manually delete the /var/shaarli/.venv/
directory and retry.
shaarli - setup shaarli bookmark service
shaarli-config - setup main shaarli configuration
shaarli-client - setup shaarli python API client