- Veröffentlicht am
- • How2-Host
AFFiNE Community Edition (CE) auf Debian installieren – Schritt-für-Schritt-Anleitung
- Autor
-
-
- Benutzer
- tmueller
- Beiträge dieses Autors
- Beiträge dieses Autors
-
Die Open-Source-Plattform AFFiNE Community Edition (CE) ist eine leistungsfähige, lokal hostbare Alternative zu Tools wie Notion, Miro oder Obsidian. Mit AFFiNE kannst du Notizen, Tabellen, Whiteboards und Diagramme in einer einheitlichen Oberfläche kombinieren – und das vollständig selbst gehostet.
In diesem Artikel lernst du, wie du AFFiNE CE unter Debian installierst, konfigurierst und sicher betreibst – wahlweise mit Docker Compose oder nativ.
Was ist AFFiNE CE?
AFFiNE ist ein Open-Source-Projekt, das Dokumenten-, Datenbank- und Whiteboard-Funktionen in einem „All-in-One Workspace“ vereint. Die Community Edition (CE) ist die kostenlose, selbst hostbare Variante. Sie richtet sich an:
- Selbsthoster und Entwickler
- Teams mit Datenschutzanspruch
- Power-User, die Notion-ähnliche Tools lokal betreiben wollen
AFFiNE ist local-first, d. h. alle Daten bleiben zunächst lokal gespeichert und können optional über einen Server oder die AFFiNE Cloud synchronisiert werden.
Offizielle Seite: https://affine.pro GitHub Repository: https://github.com/toeverything/AFFiNE
Systemvoraussetzungen
| Komponente | Empfohlen |
|---|---|
| Betriebssystem | Debian 12 oder 13 (64-Bit) |
| CPU | x86_64 (Intel oder AMD) |
| RAM | mind. 2 GB |
| Speicherplatz | mind. 5 GB frei |
| Docker (optional) | Version ≥ 24 |
| Node.js (bei manueller Installation) | Version 18+ |
| Git | Version 2.3+ |
Variante 1: Installation mit Docker Compose
Diese Methode ist die einfachste und wird von den Entwicklern empfohlen.
Schritt 1: Docker & Docker Compose installieren
sudo apt update && sudo apt upgrade -y
sudo apt install ca-certificates curl gnupg lsb-release -y
Füge das Docker-Repository hinzu:
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \
https://download.docker.com/linux/debian $(lsb_release -cs) stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Installiere Docker + Compose:
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y
Überprüfe:
docker --version
docker compose version
Schritt 2: Projektverzeichnis anlegen
mkdir -p /opt/affine-ce
cd /opt/affine-ce
Schritt 3: Docker-Compose-Datei erstellen
Erstelle die Datei docker-compose.yml:
sudo nano docker-compose.yml
Füge folgendes Setup ein:
version: '3.9'
services:
affine:
image: ghcr.io/toeverything/affine-self-hosted:latest
container_name: affine
restart: unless-stopped
ports:
- "3010:3010"
volumes:
- ./data:/root/.affine
environment:
- AFFINE_SERVER_HOST=0.0.0.0
- AFFINE_SERVER_PORT=3010
- AFFINE_MODE=production
Hinweis: AFFiNE läuft im Container auf Port 3010. Du kannst diesen Port bei Bedarf anpassen (z. B. 8080:3010).
Schritt 4: Container starten
sudo docker compose up -d
Überprüfe den Status:
sudo docker ps
Schritt 5: Zugriff über Browser
Nach dem Start erreichst du AFFiNE über:
http://<deine-server-ip>:3010
Beispiel:
http://192.168.1.100:3010
Beim ersten Aufruf erscheint die Weboberfläche mit Optionen zum Erstellen neuer Projekte und Notizräume.
Schritt 6: Daten sichern & aktualisieren
AFFiNE speichert Daten im Volume ./data.
Sichere dieses Verzeichnis regelmäßig:
tar czf affine-backup-$(date +%F).tar.gz data/
Um ein Update durchzuführen:
sudo docker compose pull
sudo docker compose down
sudo docker compose up -d
Variante 2: Manuelle Installation auf Debian (ohne Docker)
Diese Methode richtet sich an Entwickler oder Nutzer, die AFFiNE nativ kompilieren möchten.
Schritt 1: Abhängigkeiten installieren
sudo apt update && sudo apt install git curl nodejs npm -y
Überprüfe Versionen:
node -v
npm -v
Schritt 2: Repository klonen
cd /opt
sudo git clone https://github.com/toeverything/AFFiNE.git
cd AFFiNE
Schritt 3: Abhängigkeiten installieren
npm install
Falls du pnpm bevorzugst (schneller und stabiler):
sudo npm install -g pnpm
pnpm install
Schritt 4: Server starten
Starte den Entwicklungsserver:
npm run dev
Oder für Produktivbetrieb:
npm run start
AFFiNE läuft standardmäßig auf Port 3010.
Zugriff:
http://localhost:3010
Schritt 5: Systemdienst anlegen (optional)
Damit AFFiNE automatisch startet:
sudo nano /etc/systemd/system/affine.service
Inhalt:
[Unit]
Description=AFFiNE CE Selfhosted
After=network.target
[Service]
Type=simple
User=www-data
WorkingDirectory=/opt/AFFiNE
ExecStart=/usr/bin/npm run start
Restart=always
[Install]
WantedBy=multi-user.target
Aktivieren und starten:
sudo systemctl enable affine
sudo systemctl start affine
Sicherheit & Tipps
1. Reverse Proxy mit HTTPS (z. B. Nginx)
Erstelle eine Nginx-Konfiguration für SSL:
sudo apt install nginx certbot python3-certbot-nginx -y
Beispiel-Konfiguration /etc/nginx/sites-available/affine:
server {
listen 80;
server_name affine.meinedomain.de;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name affine.meinedomain.de;
ssl_certificate /etc/letsencrypt/live/affine.meinedomain.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/affine.meinedomain.de/privkey.pem;
location / {
proxy_pass http://127.0.0.1:3010;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
Aktiviere das Setup:
sudo ln -s /etc/nginx/sites-available/affine /etc/nginx/sites-enabled/
sudo systemctl reload nginx
sudo certbot --nginx -d affine.meinedomain.de
2. Zugriff einschränken
Falls AFFiNE nur intern genutzt werden soll, kannst du den Port 3010 über die Firewall sperren:
sudo ufw allow 80,443/tcp
sudo ufw deny 3010/tcp
sudo ufw enable
3. Backups automatisieren
Lege einen täglichen Cronjob für Container-Backups an:
crontab -e
Beispiel:
0 3 * * * cd /opt/affine-ce && tar czf /opt/backups/affine-$(date +\%F).tar.gz data/
Die AFFiNE Community Edition bietet eine beeindruckende Kombination aus Textverarbeitung, Datenbanken und visueller Planung – vollständig Open Source und selbst hostbar.
Mit Docker ist die Installation in wenigen Minuten erledigt, und dank des local-first-Prinzips behältst du volle Kontrolle über deine Daten. Für produktive Umgebungen empfiehlt sich ein Reverse Proxy mit HTTPS und regelmäßige Backups.
Besonders praktisch: AFFiNE läuft stabil auf kleinen VPS-Servern oder auch im Heimnetzwerk (z. B. auf einem Raspberry Pi 4 mit 4 GB RAM).
Nützliche Links
- Offizielle Seite: https://affine.pro
- GitHub Repository: https://github.com/toeverything/AFFiNE
- Dokumentation: https://docs.affine.pro
- Community & Diskussion: https://community.affine.pro