In der heutigen Zeit, in der soziale Medien zunehmend zentralisiert und von großen Konzernen kontrolliert werden, gewinnt die Idee dezentraler Plattformen an Bedeutung. Pixelfed ist eine Open-Source-Alternative zu Instagram, die auf dem ActivityPub-Protokoll basiert und es Nutzern ermöglicht, Bilder zu teilen, ohne ihre Daten an zentrale Server zu übermitteln. In diesem Beitrag werde ich mich genauer mit Pixelfed befassen, die Funktionsweise erklären und eine Schritt-für-Schritt-Anleitung zur Installation und Absicherung einer eigenen Instanz bereitstellen.
Was ist Pixelfed?
Pixelfed ist eine dezentrale Plattform zum Teilen von Bildern, die es Nutzern ermöglicht, ihre eigenen Inhalte zu erstellen und zu teilen, während sie die Kontrolle über ihre Daten behalten. Die Plattform nutzt das ActivityPub-Protokoll, was bedeutet, dass Nutzer von verschiedenen Instanzen miteinander interagieren können. Dies fördert eine offene und vernetzte Gemeinschaft, die nicht von einem einzigen Anbieter abhängig ist.
Funktionsweise von Pixelfed
Pixelfed basiert auf einer Microservices-Architektur, die verschiedene Komponenten umfasst, darunter:
- Frontend: Das Benutzerinterface, das in PHP via Laravel entwickelt wurde.
- Backend: Die API, die die Datenverarbeitung und -speicherung übernimmt.
- Datenbank: Pixelfed verwendet eine relationale Datenbank (üblicherweise MySQL/MariaDB oder PostgreSQL) zur Speicherung von Benutzerinformationen und Mediendateien.
- Caching: Um die Performance zu optimieren, wird ein Caching-System (wie Redis) eingesetzt, um häufig abgerufene Daten zwischenzuspeichern.
Installation einer eigenen Pixelfed-Instanz
Um eine eigene Instanz von Pixelfed zu installieren, benötigen wir einen Server mit den folgenden Anforderungen:
- Betriebssystem: Ubuntu 20.04 oder höher.
- Webserver: Nginx oder Apache.
- Datenbank: MySQL oder PostgreSQL.
- PHP: Version 7.4 oder höher.
Schritt 1: Server vorbereiten
sudo apt update && sudo apt upgrade
sudo apt install git curl unzip
Schritt 2: PHP und Abhängigkeiten installieren
sudo apt install php php-cli php-fpm php-mysql php-xml php-mbstring php-curl php-zip php-gd php-bcmath php-json php-redis
Schritt 3: Datenbank einrichten
CREATE DATABASE pixelfed;
CREATE USER 'pixelfed'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON pixelfed.* TO 'pixelfed'@'localhost';
FLUSH PRIVILEGES;
Schritt 4: Pixelfed herunterladen und konfigurieren
git clone https://github.com/pixelfed/pixelfed.git
cd pixelfed
cp .env.example .env
vim .env
Setze die gewünschten Werte für DB_DATABASE
, DB_USERNAME
 und DB_PASSWORD
.
Schritt 5: Abhängigkeiten installieren
composer install --optimize-autoloader --no-dev
Schritt 6: Anwendung konfigurieren
php artisan migrate --seed
Schritt 7: Webserver konfigurieren
Konfiguriere Nginx oder Apache, um auf die Pixelfed-Instanz zuzugreifen. Hier ein Beispiel für Nginx:
server {
listen 80;
server_name your-domain.com;
root /path/to/pixelfed/public;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Schritt 8: SSL-Zertifikat einrichten
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx
Absicherung der Pixelfed-Instanz
Um Ihre Pixelfed-Instanz zu sichern, solltest Du folgende Schritte in Betracht ziehen:
- Firewall einrichten: BeispielsweiseÂ
ufw
, um den Zugriff auf den Server zu steuern. - Regelmäßige Updates: Halte Dein System und alle Softwarepakete aktuell. Am Besten gleich Reminder anlegen
- Backup-Strategie: Implementiere regelmäßige Backups von Datenbank und Mediendateien.
- Monitoring: Setze Monitoring-Tools ein, um die Integrität der Instanz zu überwachen. Ein Beitrag zu Monitoring-Tools bereite ich vor. Das dauert allerdings noch etwas.
Fazit
Pixelfed ist eine vielversprechende Alternative zu zentralisierten Bildplattformen. Die Installation und der Betrieb einer eigenen Instanz sind mit den richtigen Schritten und Tools gut machbar. Durch die dezentralisierte Natur von Pixelfed hast Du die Kontrolle über Deine Daten und kannst Teil einer wachsenden Community werden, die Wert auf Privatsphäre und Unabhängigkeit legt.