OpenShip Kompletter Leitfaden 2026: Eigene Vercel-Alternative mit Open-Source-Plattform aufbauen
TL;DR — OpenShip ist eine Open-Source-Deploymentsplattform, die diese Woche auf GitHub abgeht (8.9K+ Stars). Damit bekommst du auf deinem eigenen VPS die gleiche Push-to-Deploy-Erfahrung wie bei Vercel/Railway – ohne Vendor Lock-in, komplett kostenlos.
Warum brauchst du OpenShip?
Wenn du Vercel, Netlify oder Railway zum Deployen nutzt, kennst du sicher diese Probleme:
- Kostenlose Limits nicht ausreichend: Vercels Hobby-Plan bietet nur 100 GB Bandwidth – danach wird der Dienst gestoppt
- Begrenzte Build-Minuten: Railway liefert nur 500 Minuten pro Monat, bei häufigerem Deployen schnell aufgebraucht
- Daten nicht unter deiner Kontrolle: Traffic, Logs, Umgebungsvariablen – alles bei Drittanbietern
- Unberechenbare Preise: Sobald Projekte skalieren, springt die monatliche Rechnung von $0 auf $50+
Genau für diese Probleme bietet OpenShip eine Lösung.
Was ist OpenShip?
OpenShip ist eine Open-Source-, selbst hostbare Deploymentsplattform mit folgenden Kernfunktionen:
| Feature | Beschreibung |
|---|---|
| 🚀 Push-to-Deploy | Git push triggert automatisch Build und Deployment – genau wie bei Vercel |
| 🐳 Docker-nativ | Erkennt Projekttypen automatisch und baut Docker-Container |
| 🔒 Automatisches TLS | Let's Encrypt eingebaut, HTTPS-Zertifikate werden automatisch beantragt und verlängert |
| 🌐 Eigene Domains | Eigene Domain verbinden, DNS und Routing werden automatisch konfiguriert |
| 📊 Web-Dashboard | Visuelles Management aller Projekte, Logs einsehen, Umgebungsvariablen verwalten |
| 💻 Multi-Plattform | Desktop-App / CLI / Web-Dashboard – drei Wege zum Ziel |
| 🆓 Komplett kostenlos | MIT-Lizenz, Code vollständig auf deinem eigenen Server |
Tech-Stack: TypeScript + PostgreSQL + Redis + OpenResty (Edge-Routing) + Docker
GitHub: oblien/openship — 8.9K+ Stars, diese Woche über 5.800 neue hinzugekommen
OpenShip installieren
Methode 1: One-Click-Installation (empfohlen)
Der einfachste Weg ist das offizielle Installationsskript, unterstützt Linux / macOS / Windows:
# CLI installieren
curl -fsSL https://get.openship.io | sh
# oder über npm
npm i -g openship
Nach der Installation starte den interaktiven Einrichtungsassistenten:
openship
Der Assistent führt dich durch:
1. Administrator-Account erstellen
2. Domain konfigurieren (z. B. openship.yourdomain.com)
3. Als Systemdienst installieren (Autostart)
Methode 2: Docker Compose Deployment
Wenn du Docker bevorzugst oder feinere Kontrolle brauchst:
git clone https://github.com/oblien/openship.git && cd openship
cp .env.example .env
# .env bearbeiten – Domain, Datenbank-Passwort etc. eintragen
vim .env
# Alle Dienste starten
docker compose --env-file .env -f docker/docker-compose.yml up -d
Damit wird der komplette Stack gestartet: - PostgreSQL — Datenspeicherung - Redis — Caching und Queues - API Server — zentrale Control Plane - Dashboard — Web-Verwaltungsoberfläche - OpenResty Edge — Reverse Proxy + automatisches TLS (Ports 80/443)
Methode 3: Desktop-App
Wenn du nur privat nutzt und keinen Always-on-Server brauchst, kannst du einfach die Desktop-App herunterladen:
| Plattform | Download |
|---|---|
| macOS (Apple Silicon) | Openship-arm64.dmg |
| macOS (Intel) | Openship-x64.dmg |
| Windows | Openship-win32-x64.zip |
| Linux | Openship.AppImage |
Die Desktop-App läuft lokal als Control Plane und verbindet sich per SSH mit dem Server fürs Deployment. Ideal für einzelne Entwickler, die keinen permanent laufenden Server brauchen.
Schnelleinstieg: Erstes Projekt deployen
1. Projekt initialisieren
Wechsle in dein Projektverzeichnis und starte:
cd dein-projekt
openship init
openship init erkennt automatisch deinen Projekttyp (Node.js, Python, Go, Ruby usw.) und generiert die Konfiguration.
2. Deployen
openship deploy
Das war's schon. OpenShip erledigt folgendes:
- Erkennen — Liest
package.json,requirements.txt,go.modusw., um den Tech-Stack zu identifizieren - Builden — Packt alles in ein Docker-Image und friert die Konfiguration als Snapshot ein
- Starten — Startet als Container, hört nur auf Loopback, keine offenen Ports
- Routing — OpenResty verteilt automatisch Domains + TLS-Zertifikate
3. Zugreifen
Nach dem Deployment siehst du die Zugriffs-URL:
✅ Deployed! Your app is live at:
https://deine-app.openship.yourdomain.com
Erweiterte Features
Eigene Domains
Standardmäßig vergibt OpenShip eine Subdomain. Du kannst aber deine eigene Domain verbinden:
# Über das OpenShip Dashboard oder per CLI:
openship domains add deine-app --domain myapp.com
OpenShip kümmert sich automatisch um: - OpenResty-Routing-Regeln konfigurieren - Let's Encrypt-Zertifikat beantragen - HTTP → HTTPS-Weiterleitung einrichten
Umgebungsvariablen verwalten
Verwalte Umgebungsvariablen über das Dashboard oder CLI, mit Unterstützung für mehrere Umgebungen (production / staging / preview):
# Umgebungsvariablen setzen
openship env set DATABASE_URL="postgresql://user:pass@db:5432/myapp"
openship env set REDIS_URL="redis://redis:6379"
# Umgebungsvariablen anzeigen
openship env list
# Für bestimmte Umgebung setzen
openship env set --env production API_KEY="sk-xxx"
Multi-Projekt-Deployment (Monorepo)
OpenShip unterstützt Monorepos nativ – jedes Unterverzeichnis kann als eigenständiges Projekt deployed werden:
mein-monorepo/
├── frontend/ # Wird als Frontend-Projekt separat deployed
│ └── package.json
├── backend/ # Wird als Backend-API separat deployed
│ └── package.json
└── openship.json # Globale Konfiguration (optional)
Einfach in jedem Unterverzeichnis openship init und openship deploy ausführen.
Eigene Build-Konfiguration
Wenn die automatische Erkennung nicht ausreicht, erstelle eine openship.json im Projektstamm:
{
"build": {
"command": "pnpm build",
"output": "dist"
},
"start": {
"command": "node server.js"
},
"env": {
"NODE_ENV": "production"
},
"domains": ["myapp.com", "www.myapp.com"]
}
Deployment-Logs einsehen
# Live-Logs
openship logs --follow
# Letzte 100 Zeilen
openship logs --tail 100
# Nach Deployment-ID filtern
openship logs --deployment dpl_abc123
Auf vorherige Version zurückrollen
Jedes Deployment erzeugt einen Snapshot – Rollback ist jederzeit möglich:
# Deployments-Verlauf anzeigen
openship deployments list
# Auf bestimmte Version zurücksetzen
openship rollback dpl_abc123
Architektur
OpenShips Architektur ist in drei Schichten aufgebaut:
┌─────────────────────────────────────────────┐
│ Control Plane │
│ ┌──────────┐ ┌───────┐ ┌──────────────┐ │
│ │ API │ │ Redis │ │ PostgreSQL │ │
│ │ Server │ │ │ │ │ │
│ └──────────┘ └───────┘ └──────────────┘ │
├─────────────────────────────────────────────┤
│ Edge-Schicht │
│ ┌──────────────────────────────────────┐ │
│ │ OpenResty (Routing + TLS + Load │ │
│ │ Balancing) │ │
│ └──────────────────────────────────────┘ │
├─────────────────────────────────────────────┤
│ Runtime │
│ ┌────────┐ ┌────────┐ ┌────────┐ │
│ │ App A │ │ App B │ │ App C │ ... │
│ │ :3000 │ │ :8080 │ │ :5000 │ │
│ └────────┘ └────────┘ └────────┘ │
└─────────────────────────────────────────────┘
- Control Plane — Projekt-Konfiguration, Deployment-Pipelines, Umgebungsvariablen verwalten
- Edge-Schicht — OpenResty als Reverse Proxy, automatisches TLS, intelligentes Routing
- Runtime — Jede App läuft in einem eigenen Docker-Container, hört nur auf Loopback
Der gesamte Traffic geht durch die Edge-Schicht. App-Container暴露 keine Ports direkt – maximale Sicherheit.
Vergleich: OpenShip vs. Vercel / Railway
| Kriterium | OpenShip | Vercel | Railway |
|---|---|---|---|
| Preis | Kostenlos (selbst gehostet) | Begrenztes Free-Tier | $5 Testguthaben |
| Datenhoheit | ✅ Vollständig unter deiner Kontrolle | ❌ Drittanbieter | ❌ Drittanbieter |
| Eigene Domains | ✅ Unbegrenzt | ✅ Kostenlos | ✅ Kostenlos |
| TLS-Zertifikate | ✅ Automatisch | ✅ Automatisch | ✅ Automatisch |
| Push-to-Deploy | ✅ | ✅ | ✅ |
| Serverless | ❌ Container-Modus | ✅ | ✅ Container + Serverless |
| Edge Functions | ❌ | ✅ | ❌ |
| Build-Minuten | ✅ Unbegrenzt | Begrenzt | 500 Min/Monat |
| Bandwidth-Limit | ✅ Unbegrenzt | 100 GB/Monat | Begrenzt |
| Selbst hostbar | ✅ | ❌ | ❌ |
Fazit: Wenn du Serverless und Edge Functions brauchst, ist Vercel nach wie vor stärker. Aber wenn dir kontrollierbare Kosten, Datenautonomie und unbegrenztes Deployment wichtiger sind, ist OpenShip die bessere Wahl.
Häufige Fragen
F: Welche Server-Anforderungen hat OpenShip?
Mindestens: 1 CPU-Kern / 1 GB RAM / 20 GB Speicher (für 1-3 kleine Projekte)
Empfohlen: 2 CPU-Kerne / 4 GB RAM / 40 GB SSD (für 5-10 Projekte)
F: Welche Programmiersprachen und Frameworks werden unterstützt?
Fast alle gängigen Tech-Stacks: - Node.js — Next.js, Nuxt, Express, Fastify usw. - Python — Django, Flask, FastAPI usw. - Go — Gin, Echo, Fiber usw. - Ruby — Rails, Sinatra usw. - PHP — Laravel, Symfony usw. - Rust — Actix, Axum usw. - Docker — Jedes Projekt mit Dockerfile
F: Wie funktioniert Backup und Migration?
Alle Daten liegen in PostgreSQL – ein Datenbank-Backup genügt:
# Backup
docker exec openship-postgres pg_dump -U openship openship > backup.sql
# Wiederherstellen
cat backup.sql | docker exec -i openship-postgres psql -U openship openship
F: Kann OpenShip mit anderen Tools integriert werden?
Ja. OpenShip bietet eine REST-API und Webhooks:
# Deployment per API auslösen
curl -X POST https://openship.yourdomain.com/api/deploy \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"project": "my-app", "ref": "main"}'
Zusammenfassung
OpenShip ist eine der spannendsten Open-Source-Deploymentsplattformen 2026. Es bringt Vercel-niveau Entwicklererfahrung auf deinen eigenen Server:
- 💰 Geld sparen — Keine Gebühren mehr für Build-Minuten oder Bandwidth
- 🔒 Selbstbestimmt — Code, Daten, Logs komplett unter deiner Kontrolle
- 🚀 Effizient — Git push = Deployment, automatisches TLS, Zero-Config-Deployment
- 📈 Keine Limits — Deploye so viele Projekte wie du willst
Wenn du genug von Vercels kostenlosen Limits hast oder eine vollständig kontrollierbare PaaS suchst, ist OpenShip einen Versuch wert.
Nützliche Links: - GitHub: github.com/oblien/openship - Dokumentation: openship.io/docs - Chinesische Dokumentation: README.zh.md