Einleitung
Mastodon ist eine beliebte Open-Source-Microblogging-Plattform, die es Nutzern ermöglicht, ihre eigenen sozialen Netzwerke zu erstellen. Das Selbst-Hosten von Mastodon gibt Ihnen die volle Kontrolle über Ihre Daten und die Möglichkeit, Ihre Instanz anzupassen. In dieser Anleitung zeigen wir Ihnen die Schritte zur Installation von Mastodon auf einem VPS, einschließlich der Auswahl des Servers bis zur Konfiguration.
Voraussetzungen
Bevor wir beginnen, stellen Sie sicher, dass Sie Folgendes haben:
- Ein VPS mit Ubuntu 20.04 oder höher (sehen Sie sich unseren vollständigen VPS-Vergleich für Optionen an).
- Einen Domainnamen für Ihre Mastodon-Instanz.
- Grundkenntnisse in der Nutzung von Kommandozeilen-Tools.
Auswahl eines VPS-Anbieters
Bei der Auswahl eines VPS-Anbieters sollten Sie Folgendes berücksichtigen:
| Anbieter | Startpreis | Spezifikationen |
|---|---|---|
| Contabo VPS | 5,99 EUR/Monat | 4 vCPU, 8 GB RAM, 300 GB SSD |
| Hetzner Cloud | 4,15 EUR/Monat | 2 vCPU, 2 GB RAM, 20 GB SSD |
| DigitalOcean | 6 USD/Monat | 1 vCPU, 1 GB RAM, 25 GB SSD |
| Vultr | 6 USD/Monat | 1 vCPU, 1 GB RAM, 25 GB SSD |
| Linode | 5 USD/Monat | 1 vCPU, 1 GB RAM, 25 GB SSD |
Für diese Anleitung empfehlen wir entweder Contabo oder Hetzner Cloud, da sie eine gute Balance zwischen Preis und Leistung bieten.
Schritt 1: Erstkonfiguration
-
Erstellen Sie eine neue VPS-Instanz: Wählen Sie Ihren gewünschten Anbieter und richten Sie eine neue Instanz mit einer minimalen Installation von Ubuntu ein.
-
Aktualisieren Sie Ihr System: Verbinden Sie sich über SSH mit Ihrem VPS und führen Sie die folgenden Befehle aus:
sudo apt update sudo apt upgrade -y -
Installieren Sie die erforderlichen Pakete:
sudo apt install -y git curl wget build-essential
Schritt 2: Docker und Docker Compose installieren
Mastodon läuft in Docker-Containern, was die Installation und Verwaltung erleichtert.
-
Docker installieren:
curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh -
Docker Compose installieren:
sudo apt install -y python3-pip sudo pip3 install docker-compose
Schritt 3: Mastodon-Repository klonen
Klonen Sie als nächstes das Mastodon-Repository und wechseln Sie in dieses Verzeichnis.
git clone https://github.com/mastodon/mastodon.git ~/.mastodon
cd ~/.mastodon
Schritt 4: Umgebungsvariablen konfigurieren
Erstellen Sie eine neue Konfigurationsdatei und füllen Sie diese mit Ihren Daten:
cp .env.production.sample .env.production
nano .env.production
Stellen Sie sicher, dass Sie Ihre Domain, E-Mail und andere relevante Konfigurationen festlegen.
Schritt 5: Abhängigkeiten installieren
Um die Mastodon-App zu bauen, müssen Sie Node.js, Yarn und andere Abhängigkeiten installieren.
-
Node.js installieren:
curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash - sudo apt install -y nodejs -
Yarn installieren:
npm install --global yarn -
Ruby-Abhängigkeiten installieren:
sudo apt install -y gcc libpq-dev libjpeg-dev libxml2-dev libxslt1-dev -
Bundler installieren:
sudo gem install bundler -
Gems installieren:
bundle install
Schritt 6: Datenbank einrichten
Mastodon verwendet PostgreSQL. Erstellen Sie eine neue Datenbank für Ihre Instanz.
-
PostgreSQL installieren:
sudo apt install -y postgresql postgresql-contrib -
Erstellen Sie einen Datenbankbenutzer und eine Datenbank:
sudo -u postgres createuser mastodon
sudo -u postgres createdb mastodon_production --owner mastodon
-
Ein Passwort zuweisen:
Öffnen Sie die PostgreSQL-Eingabeaufforderung:
sudo -u postgres psqlFühren Sie dann die folgenden Befehle aus, wobei Sie
<yourpassword>ersetzen:ALTER USER mastodon PASSWORD '<yourpassword>';
Schritt 7: Mastodon mit Docker starten
Jetzt können Sie die Mastodon-Anwendung mit Docker Compose starten.
docker-compose build
docker-compose up -d
Schritt 8: Nginx konfigurieren
Wir richten Nginx als Reverse Proxy ein, um Anfragen an Ihre Mastodon-Instanz weiterzuleiten.
-
Nginx installieren:
sudo apt install -y nginx -
Nginx konfigurieren: Erstellen Sie eine neue Konfigurationsdatei für Ihre Mastodon-Instanz.
sudo nano /etc/nginx/sites-available/mastodonFüllen Sie diese mit Folgendem:
server { listen 80; server_name yourdomain.com; location / { proxy_pass http://localhost:3000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } -
Die Konfiguration aktivieren:
sudo ln -s /etc/nginx/sites-available/mastodon /etc/nginx/sites-enabled/ -
Nginx neu starten:
sudo systemctl restart nginx
Schritt 9: Installation abschließen
Stellen Sie sicher, dass alles ordnungsgemäß funktioniert:
docker-compose logs
Navigieren Sie mit einem Webbrowser zu Ihrer Mastodon-Instanz, um die Einrichtung abzuschließen.
Häufig gestellte Fragen
1. Wie viel kostet es, Mastodon auf einem VPS selbst zu hosten?
Die Kosten hängen vom Anbieter und dem spezifischen Plan ab, den Sie wählen. Zum Beispiel beginnt Contabo VPS bei 5,99 EUR/Monat, während Hetzner Cloud bei 4,15 EUR/Monat beginnt. Wählen Sie einen Plan, der Ihren Ressourcenanforderungen entspricht, wie CPU und RAM, insbesondere wenn Sie mit hoher Nutzung rechnen.
2. Kann ich mehrere Mastodon-Instanzen auf einem VPS hosten?
Ja, es ist möglich, mehrere Mastodon-Instanzen auf einem VPS zu hosten, aber dies erfordert eine sorgfältige Verwaltung der Ressourcen. Jede Instanz benötigt ihre eigene Datenbank und kann erhebliche Ressourcen benötigen, um effizient zu funktionieren. Stellen Sie sicher, dass Ihr VPS über genügend CPU-Leistung und RAM verfügt, um diese zu unterstützen.
3. Kann ich meine Mastodon-Instanz nach der Installation anpassen?
Absolut! Mastodon ist hochgradig anpassbar. Sie können Designs ändern, neue Funktionen hinzufügen und Benutzerkonten über das Admin-Dashboard verwalten. Viele Benutzer passen ihre Instanzen an, um spezifischen Bedürfnissen der Community gerecht zu werden, z. B. durch die Erstellung maßgeschneiderter Inhalte oder die Installation zusätzlicher Plugins.
Indem Sie dieser Anleitung folgen, sind Sie jetzt in der Lage, Mastodon auf Ihrem VPS selbst zu hosten, was Ihnen eine größere Kontrolle und Anpassungsmöglichkeiten für Ihr soziales Netzwerk bietet.