Überarbeitet am 8. September 2026.
Als ich diesen Artikel ursprünglich geschrieben habe, wollte ich möglichst viele Dienste auf meinem eigenen Server betreiben. Für Textschnipsel und Konfigurationen kam damals Stikked zum Einsatz. Der Grundgedanke gefällt mir bis heute – nur würde ich dafür inzwischen eine modernere Lösung nehmen: MicroBin.
MicroBin ist ein schlankes, selbst gehostetes Pastebin in Rust. Neben reinem Text kann es auch Dateien teilen, Links verkürzen, Einträge automatisch ablaufen lassen und verschiedene Datenschutz- beziehungsweise Verschlüsselungsfunktionen bereitstellen.
Voraussetzungen
Docker und Docker Compose sollten bereits laufen. Falls nicht: Docker und Docker Compose installieren.
Projektordner anlegen
sudo mkdir -p /opt/microbin
sudo chown $USER:$USER /opt/microbin
cd /opt/microbin
.env anlegen
nano .env
Ein einfaches Beispiel:
MICROBIN_PUBLIC_PATH=https://paste.example.de
MICROBIN_TITLE=Mein Pastebin
MICROBIN_ADMIN_USERNAME=admin
MICROBIN_ADMIN_PASSWORD=ein-langes-zufaelliges-passwort
MICROBIN_NO_LISTING=true
Danach die Datei schützen:
chmod 600 .env
MicroBin bietet sehr viele weitere Umgebungsvariablen, beispielsweise für Basic Auth, maximale Dateigrößen, Ablaufzeiten, Client-/Server-Verschlüsselung und das Deaktivieren von Telemetrie. Dafür gibt es inzwischen sogar einen Konfigurationsgenerator in der offiziellen Dokumentation.
compose.yaml erstellen
services:
microbin:
image: danielszabo99/microbin:latest
restart: unless-stopped
ports:
- "127.0.0.1:8080:8080"
volumes:
- microbin_data:/app/microbin_data
environment:
MICROBIN_PUBLIC_PATH: ${MICROBIN_PUBLIC_PATH}
MICROBIN_TITLE: ${MICROBIN_TITLE}
MICROBIN_ADMIN_USERNAME: ${MICROBIN_ADMIN_USERNAME}
MICROBIN_ADMIN_PASSWORD: ${MICROBIN_ADMIN_PASSWORD}
MICROBIN_NO_LISTING: ${MICROBIN_NO_LISTING}
volumes:
microbin_data:
Das offizielle Compose-Beispiel verwendet ebenfalls ein persistentes Volume unter /app/microbin_data. Wichtig ist mir auf einem öffentlichen Server wieder die Portbindung: MicroBin lauscht hier am Host nur auf 127.0.0.1:8080. Der Zugriff von außen läuft über Nginx.
Container starten
docker compose --env-file .env up -d
docker compose ps
docker compose logs --tail=100 microbin
Nginx davor setzen
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name paste.example.de;
ssl_certificate /etc/letsencrypt/live/paste.example.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/paste.example.de/privkey.pem;
location / {
proxy_pass http://127.0.0.1:8080;
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;
}
}
Danach:
sudo nginx -t
sudo systemctl reload nginx
Öffentlich oder privat?
Genau darüber sollte man sich vor dem Start Gedanken machen. Ein öffentliches Pastebin kann sehr schnell für Spam, Malware-Links oder andere unerwünschte Inhalte missbraucht werden. MicroBin bietet dafür unter anderem Basic Auth, private Einträge, deaktivierbare öffentliche Listings und Uploader-Passwörter.
Für meinen persönlichen Gebrauch würde ich lieber restriktiv starten und nur die Funktionen freigeben, die tatsächlich benötigt werden.
Backups
Der persistente Docker-Volume-Inhalt gehört natürlich ins Backup. Wer bereits Borg nutzt, kann MicroBin in den normalen Server-Backupplan aufnehmen. Meine aktuelle Borg-Anleitung findest du hier: BorgBackup unter Debian und Ubuntu.
Updates
cd /opt/microbin
docker compose pull
docker compose up -d
Vor größeren Änderungen lohnt sich wie immer ein Blick in Changelog und Dokumentation.
Fazit
Der Gedanke meines alten Stikked-Artikels war richtig: Für ein paar Codezeilen, Konfigurationen oder Dateien braucht man nicht zwingend einen fremden Paste-Dienst. MicroBin setzt diese Idee heute deutlich moderner um und lässt sich mit Docker sehr schlank betreiben.
Quellen: MicroBin: Docker installation, MicroBin: Configuration und MicroBin-Projektseite.
Wie ist deine Meinung?
Schreib gern einen Kommentar unter dem Artikel oder diskutiere mit anderen im Matrix-Kanal:
#dasnetzundich:matrix.org
1 Kommentar zu „Eigenes Pastebin mit MicroBin und Docker Compose betreiben“