Coolify Installation: Anwendungs-Deployment mit Self-Hosted PaaS
Coolify-Installation, Docker- und Git-Integration, Anwendungs-Deployment, Datenbankverwaltung, SSL-Zertifikate, Umgebungsvariablen und Self-Hosted PaaS als Alternative zu Heroku/Netlify.
Inhaltsverzeichnis
Coolify Installation: Anwendungs-Deployment mit Self-Hosted PaaS
Coolify ist eine Open-Source, Self-Hosted Alternative zu Cloud-Plattformen wie Heroku, Netlify und Vercel. Mit Coolify auf Ihrem eigenen Server können Sie Anwendungen, Datenbanken und Dienste einfach verwalten. Diese Docker-basierte Plattform unterstützt automatisches Deployment, wenn Sie Code über Git-Integration pushen.
Was ist Coolify?
Coolify ist eine moderne PaaS-Lösung, mit der Sie mehrere Server und Anwendungen über eine einzige Oberfläche verwalten können. Hauptmerkmale:
- Automatisches SSL: Kostenlose SSL-Zertifikate über Let's Encrypt
- Git-Integration: GitHub, GitLab, Bitbucket-Unterstützung
- Multi-Server: Mehrere Server über ein Panel verwalten
- Datenbankdienste: PostgreSQL, MySQL, Redis, MongoDB
- Docker Compose: Bestehende Compose-Dateien direkt deployen
- Webhooks: Automatische Deployment-Trigger
Systemanforderungen
- Ubuntu 20.04/22.04 oder Debian 11/12
- Mindestens 2 GB RAM (4 GB empfohlen)
- Mindestens 30 GB Festplattenspeicher
- Docker sollte NICHT installiert sein (Coolify installiert sein eigenes Docker)
Installation
Die Coolify-Installation erfolgt mit einem einzigen curl-Befehl:
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
Das Installationsskript führt automatisch folgende Schritte durch:
- Installation von Docker und Docker Compose
- Download und Start der Coolify-Container
- Konfiguration der erforderlichen Netzwerke und Volumes
- Firewall-Regeln (Port 8000)
Nach der Installation über den Browser zugreifen:
http://SERVER_IP:8000
Bei der Ersteinrichtung werden Sie aufgefordert, ein Admin-Konto zu erstellen. Legen Sie ein starkes Passwort fest.
Erstkonfiguration
Admin-Konto erstellen
Beim ersten Login E-Mail und Passwort festlegen. Diese Anmeldedaten werden in der Coolify-Datenbank gespeichert.
Server hinzufügen
Coolify fügt den Server, auf dem es installiert ist (localhost), automatisch hinzu. Um weitere Server hinzuzufügen:
- Servers → Add Server
- SSH-Verbindungsdetails eingeben (IP, Port, Benutzername)
- SSH Private Key hinzufügen
- Verbindung mit Validate & Save testen
# SSH-Key für Coolify-Verbindung zu Remote-Servern erstellen
ssh-keygen -t ed25519 -C "coolify@myserver"
# Public Key zum Remote-Server hinzufügen
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@remote-server
Git-Quellen hinzufügen
GitHub-Integration
- Sources → Add Source → GitHub App
- OAuth App oder GitHub App auf GitHub erstellen
- Client ID und Client Secret eingeben
- Callback URL:
http://SERVER_IP:8000/auth/github
GitLab-Integration
# Personal Access Token auf GitLab erstellen
# Erforderliche Scopes: api, read_user, read_repository
- Sources → Add Source → GitLab
- GitLab URL und Access Token eingeben
- Verbindung testen
Anwendungen deployen
Neues Projekt erstellen
- Projects → New Project
- Projektname und Beschreibung eingeben
- Environment auswählen (production, staging usw.)
Anwendung hinzufügen
- Im Projekt New Resource → Application
- Git-Quelle auswählen
- Repository und Branch auswählen
- Build Pack auswählen:
- Nixpacks: Automatische Erkennung (Node.js, Python, PHP, Ruby usw.)
- Dockerfile: Eigenes Dockerfile verwenden
- Docker Compose: compose.yml-Datei
- Static: Statisches HTML/CSS/JS
# Beispiel: Dockerfile für eine Node.js-Anwendung
FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
EXPOSE 3000
CMD ["node", "server.js"]
Umgebungsvariablen
Gehen Sie zum Tab Environment Variables in den Anwendungseinstellungen:
# Beispiel-Umgebungsvariablen
NODE_ENV=production
DATABASE_URL=postgresql://user:pass@db:5432/myapp
REDIS_URL=redis://redis:6379
SECRET_KEY=ihr-geheimer-schluessel
PORT=3000
Fügen Sie sensible Informationen (API-Keys, Passwörter) als Umgebungsvariablen hinzu. Schreiben Sie sie niemals in den Quellcode.
Domain- und SSL-Konfiguration
- Tab Domains in den Anwendungseinstellungen
- Domain-Namen eingeben:
app.example.com - SSL-Option aktivieren (Let's Encrypt automatisch)
- DNS A-Record erstellen:
app.example.com → SERVER_IP
# DNS-Record überprüfen
nslookup app.example.com
dig app.example.com A
Datenbankdienste
PostgreSQL einrichten
- New Resource → Database → PostgreSQL
- Version auswählen (14, 15, 16)
- Benutzername und Passwort festlegen
- Auf Deploy klicken
# Coolify PostgreSQL-Verbindungsdetails
# Interne URL (für Apps auf demselben Server):
postgresql://coolify:passwort@postgres:5432/mydb
# Externe URL (für externen Zugriff):
postgresql://coolify:passwort@SERVER_IP:PORT/mydb
Redis einrichten
# New Resource → Database → Redis
# Version: 7.x
# Interne Verbindung:
redis://default:passwort@redis:6379
Datenbank-Backups
Coolify bietet automatische Backup-Funktionalität:
- Tab Backups in den Datenbankeinstellungen
- Backup-Häufigkeit festlegen (täglich, wöchentlich)
- S3-kompatiblen Speicher hinzufügen (AWS S3, MinIO, Cloudflare R2)
# Manuelles Backup
coolify backup create --database postgres-id
# Backups auflisten
coolify backup list
Mit Docker Compose deployen
Sie können bestehende docker-compose.yml-Dateien direkt in Coolify importieren:
# docker-compose.yml Beispiel
version: '3.8'
services:
app:
image: myapp:latest
environment:
- NODE_ENV=production
- DATABASE_URL=${DATABASE_URL}
ports:
- "3000:3000"
depends_on:
- db
db:
image: postgres:16
environment:
POSTGRES_DB: myapp
POSTGRES_USER: ${DB_USER}
POSTGRES_PASSWORD: ${DB_PASSWORD}
volumes:
- postgres_data:/var/lib/postgresql/data
volumes:
postgres_data:
Automatisches Deployment (Webhook)
Webhooks für automatisches Deployment nach Git-Push einrichten:
- Tab Webhooks in den Anwendungseinstellungen
- Webhook-URL kopieren
- Zu GitHub/GitLab-Repository-Einstellungen hinzufügen:
# GitHub Webhook-Einstellungen:
# Payload URL: https://coolify.example.com/webhooks/github
# Content type: application/json
# Secret: Von Coolify kopiertes Secret
# Events: Push events
Coolify aktualisieren
# Coolify auf die neueste Version aktualisieren
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
# Oder über die Web-Oberfläche:
# Settings → Updates → Update Coolify
Fehlerbehebung
# Coolify-Logs anzeigen
docker logs coolify
# Alle Coolify-Container auflisten
docker ps | grep coolify
# Coolify neu starten
docker restart coolify
# Proxy (Traefik) Logs
docker logs coolify-proxy
Coolify funktioniert hervorragend auf REXE VPS-Servern. Mit 4 GB RAM und 2 vCPU können Sie kleine bis mittelgroße Projekte problemlos verwalten.
Verwandte Artikel
Nextcloud Installation: Self-Hosted Cloud-Speicher und Zusammenarbeit
Nextcloud-Installation mit Docker, Apache/Nginx-Konfiguration, Datenbankeinrichtung, SSL-Zertifikat, Dateisynchronisierung, App-Store und Leistungsoptimierung.
Docker-Verwaltung mit Portainer: Webbasierte Container-Kontrolle
Portainer CE Installation, Docker- und Kubernetes-Verwaltung, Stack-Deployment, Volume/Netzwerk-Verwaltung, Benutzerautorisierung, Webhook und GitOps-Integration.
Uptime Kuma Installation: Self-Hosted Uptime-Monitoring
Uptime Kuma Installation mit Docker, HTTP/TCP/DNS/Ping-Monitoring, Benachrichtigungsintegrationen (Telegram, Discord, E-Mail), Status-Page-Erstellung und Alert-Konfiguration.