Einen selbstgehosteten Mastodon-Server auf einem VPS für 5 € einrichten

Evaluez cet article !
[Total: 0 Moyenne : 0]


Ein selbstgehosteter Mastodon-Server auf einem 5 € VPS einrichten

Mastodon mit kleinem Budget selbst zu hosten mag riskant erscheinen, aber mit einem 5 € VPS, einigen Optimierungen und einer strukturierten Methode ist es durchaus möglich, ein stabiles dezentrales soziales Netzwerk zu betreiben. Dieser Artikel behandelt jeden Schritt, von den Voraussetzungen bis zur sicheren Inbetriebnahme, einschließlich Docker, SSL-Konfiguration und täglicher Wartung.

Kurzfassung

🔑 Bei einem **5 € VPS** bevorzugen wir **Ubuntu 22.04 LTS**, Docker und einen Reverse Proxy. Diese Kombination gewährleistet eine **einfache Bereitstellung** und **kontrollierte Kosten**.

⚙️ Die **Installation** erfolgt über Docker Compose: Abrufen des Mastodon-Repositories, Bearbeitung der **.env**-Datei und Start der Dienste. Innerhalb von 15 Minuten verfügt Ihr Container über **PostgreSQL**, **Redis** und den Webdienst.

🔒 Für minimale **Sicherheit** verwenden wir Let’s Encrypt (Certbot) hinter einem **Nginx Reverse Proxy**. Die Zertifikate werden automatisch erneuert und HTTP-Verkehr auf HTTPS umgeleitet.

💾 **Geplante Backups** in Form von PostgreSQL-Dumps und Docker-Volume-Archiven schützen Ihre Daten. Ein Cron-Skript kann die Backups an einen entfernten Speicher senden.

1. Auswahl und Vorbereitung Ihres VPS

1.1 5 € Angebote: Auswahlkriterien

Anbieter wie Scaleway, OVHcloud oder Hetzner bieten Einstiegs-VPS für 5 € pro Monat an, die in der Regel 1 vCPU, 2 GB RAM und 20 GB SSD-Speicher bereitstellen. Obwohl diese Ressourcen begrenzt sind, bleibt Mastodon funktionsfähig, wenn die Last (Anzahl der Nutzer, Häufigkeit der Hintergrundaufgaben) begrenzt wird. Prüfen Sie vor dem Start:

  • Die Art des Speichers (SSD vs. HDD): Eine SSD verbessert deutlich die Basis-I/O der Datenbank.
  • Die Bandbreite und die Burst-Politik.
  • Den Standort des Servers zur Latenz gegenüber Ihren Zielnutzern.

1.2 Vorbereitung von Ubuntu 22.04 LTS

Eine stabile und aktuelle Distribution garantiert Sicherheitsupdates. Nachdem Sie Ihre Instanz erstellt haben:

  • Melden Sie sich per SSH an: ssh root@votre-ip.
  • Aktualisieren Sie das System: apt update && apt upgrade -y.
  • Erstellen Sie einen Nicht-Root-Benutzer: adduser mastoadmin && usermod -aG sudo mastoadmin.
  • Installieren Sie die Basisabhängigkeiten: apt install curl git ufw -y.
  • Aktivieren Sie die Firewall: ufw allow OpenSSH && ufw enable.

2. Installation von Mastodon mit Docker

2.1 Docker und Docker Compose installieren

Docker vereinfacht die Bereitstellung, indem Dienste in Containern isoliert werden. Führen Sie aus:

curl -fsSL https://get.docker.com | sh  
usermod -aG docker mastoadmin  
apt install docker-compose -y

Melden Sie sich ab und wieder an, damit der Benutzer der Docker-Gruppe hinzugefügt wird.

2.2 Repository klonen und Umgebung konfigurieren

Wechseln Sie zu mastoadmin und deployen Sie Mastodon:

git clone https://github.com/mastodon/mastodon.git ~/mastodon  
cd ~/mastodon  
cp .env.production.sample .env.production

Öffnen Sie .env.production und passen Sie an:

  • LOCAL_DOMAIN = ihre-domain.tld
  • DB_USER, DB_PASS, DB_NAME
  • REDIS_URL und STREAMING_CLUSTER
Docker-Architektur von Mastodon auf VPS

2.3 Dienste starten

Bauen und starten Sie alle Container:

docker-compose build  
docker-compose up -d

Nach einigen Momenten sollten Sie Folgendes sehen:

Container Port Beschreibung
web 3000 Rails-Oberfläche
streaming 4000 WebSocket
sidekiq Hintergrundaufgaben
postgres 5432 Datenbank
redis 6379 Cache & Warteschlangen

3. Erweiterte Konfiguration und Optimierung

3.1 SSL mit Let’s Encrypt einrichten

TLS-Sicherheit ist unverhandelbar. Installieren Sie Certbot und einen Nginx-Reverse-Proxy:

apt install nginx certbot python3-certbot-nginx -y

Erstellen Sie einen Serverblock in /etc/nginx/sites-available/mastodon :

server {  
    listen 80; server_name votre-domaine.tld;  
    location / {  
        proxy_pass http://127.0.0.1:3000;  
        include proxy_params;  
    }  
}

Aktivieren Sie die Seite und generieren Sie das Zertifikat:

ln -s /etc/nginx/sites-available/mastodon /etc/nginx/sites-enabled/  
systemctl reload nginx  
certbot --nginx -d votre-domaine.tld --agree-tos --no-eff-email --redirect

3.2 Leistungsoptimierung

Auf einem kleinen VPS zählt jede Ressource:

  • Begrenzen Sie den Docker-RAM: Fügen Sie in /etc/docker/daemon.json "default-memory": "1G" hinzu.
  • Konfigurieren Sie sidekiq mit einer reduzierten Thread-Anzahl (z.B. threads: 5).
  • Aktivieren Sie den Produktionsmodus für Rails-Assets, um die CPU-Last zu reduzieren.

3.3 Backups und Wartung

Beispiel für ein Backup-Skript (täglicher Cron):

#!/bin/bash  
TIMESTAMP=$(date +%F)  
docker exec mastodon_postgres pg_dumpall -U postgres > /var/backups/db_$TIMESTAMP.sql  
tar czf /var/backups/masto_data_$TIMESTAMP.tar.gz ~/mastodon/public/system

Senden Sie diese Dateien an einen entfernten Speicherort (rsync, S3, Nextcloud), um Datenverlust zu vermeiden.

FAQ

  • Benötige ich einen leistungsstärkeren VPS, wenn die Community wächst?

    Ja, wechseln Sie zu 4 GB RAM und 2 vCPUs, sobald Sie eine signifikante Laststeigerung beobachten.

  • Wie aktualisiere ich Mastodon?

    Führen Sie im Verzeichnis ~/mastodon zuerst git pull aus, dann docker-compose build und docker-compose up -d. Vergessen Sie nicht, die Datenbank bei Bedarf zu migrieren.

  • Kann ich die Oberfläche anpassen?

    Ändern Sie die CSS/JS-Dateien in app/javascript und bauen Sie das Docker-Image neu. Achten Sie auf Konflikte bei offiziellen Updates.

  • Wie gehe ich mit Verkehrsspitzen um?

    Aktivieren Sie horizontales Skalieren der Web- und Streaming-Container, indem Sie die Last über einen Load Balancer verteilen.

Evaluez cet article !
[Total: 0 Moyenne : 0]
Lire aussi  10 unbekannte Tricks zu Majestic SEO, die nur Profis verwenden
Julie - auteure Com-Strategie.fr

Julie – Auteure & Fondatrice

Étudiante en journalisme et passionnée de technologie, Julie partage ses découvertes autour de l’IA, du SEO et du marketing digital. Sa mission : rendre la veille technologique accessible et proposer des tutoriels pratiques pour le quotidien numérique.

Schreibe einen Kommentar