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%
Find a file
2026-01-12 19:31:47 +01:00
.devcontainer Added(deps): sudo to docker 2025-11-13 17:13:31 +01:00
.gch first commit 2025-11-07 16:05:56 +00:00
.vscode first commit 2025-11-07 16:05:56 +00:00
host_vars add channel_cache variable 2026-01-11 22:46:34 +01:00
inventories first commit 2025-11-07 16:05:56 +00:00
tasks convert service restarts and reloads to handlers 2026-01-12 19:31:47 +01:00
templates add channel_cache variable 2026-01-11 22:46:34 +01:00
.gitignore first commit 2025-11-07 16:05:56 +00:00
ansible.cfg first commit 2025-11-07 16:05:56 +00:00
makefile first commit 2025-11-07 16:05:56 +00:00
pb-ping.yml first commit 2025-11-07 16:05:56 +00:00
pb.yml convert service restarts and reloads to handlers 2026-01-12 19:31:47 +01:00
README.md first commit 2025-11-07 16:05:56 +00:00
requirements.yml update check_version role 2026-01-11 23:12:32 +01:00

Friendica Ansible Setup

This Ansible playbook automates the installation and configuration of a selfhosted 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)
  • PHPFPM and required PHP modules
  • Database (MariaDB)
  • Local SMTP relay (Postfix) for outgoing email
  • Optional security tools (Fail2ban, Logrotate)

SelfHosting

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

See Installation Guide

Supported Components

Friendica

  • Friendica core software (source: GitHub)
  • Official addons from the Friendica addon repository

Web Server and PHP

  • Nginx as the web server
  • PHPFPM 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 bruteforce attacks
  • Logrotate for log file management

Support