Ansible playbook to automates the installation and configuration of a self‑hosted Friendica social network server.
- Jinja 84.3%
- Makefile 10%
- Shell 2.9%
- Dockerfile 2.8%
| .devcontainer | ||
| .gch | ||
| .vscode | ||
| host_vars | ||
| inventories | ||
| tasks | ||
| templates | ||
| .gitignore | ||
| ansible.cfg | ||
| makefile | ||
| pb-ping.yml | ||
| pb.yml | ||
| README.md | ||
| requirements.yml | ||
Friendica Ansible Setup
This Ansible playbook automates the installation and configuration of a self‑hosted Friendica social network server.
Friendica is a decentralized, federated social networking platform that gives you full control over your data.
The playbook sets up Friendica along with all required components:
- Web server (Nginx)
- PHP‑FPM and required PHP modules
- Database (MariaDB)
- Local SMTP relay (Postfix) for outgoing email
- Optional security tools (Fail2ban, Logrotate)
Self‑Hosting
With this playbook, you can host Friendica on your own server, creating an independent, secure, and private social network instance.
It is aimed at users with basic knowledge of server administration and Ansible.
Getting Started
Supported Components
Friendica
- Friendica core software (source: GitHub)
- Official addons from the Friendica addon repository
Web Server and PHP
- Nginx as the web server
- PHP‑FPM and required PHP modules (
mbstring,curl,gd,imagick,mysql, etc.)
Database
- MariaDB server and client
- Python3 PyMySQL for database access via Ansible
Mail Server
- Postfix configured as a local SMTP relay or authenticated relayhost
Security and Maintenance (optional)
- Fail2ban for protection against brute‑force attacks
- Logrotate for log file management
Support
- Official Friendica website: https://friendi.ca
- GitHub repository: friendica/friendica
- Ansible playbook issues: Tealk/ansible_friendica