Installation
Punchify läuft als Docker-Anwendung mit drei Containern: der App, einer PostgreSQL-Datenbank und dem Webserver Caddy, der sich automatisch um das HTTPS-Zertifikat kümmert. Alle Einstellungen stehen in einer Datei: .env.
Voraussetzungen
- Ein Linux-Server mit Docker und dem Compose-Plugin (
docker compose). Für kleine und mittlere Betriebe genügt ein kleiner Server, z. B. 2 CPU-Kerne, 4 GB RAM und 40 GB Speicher. - Eine Adresse (z. B.
zeit.ihrefirma.de), deren DNS-Eintrag (A bzw. AAAA) auf den Server zeigt. - Die Ports 80 und 443 sind aus dem Internet erreichbar (für das Zertifikat von Let's Encrypt).
- Ausgehend muss der Server
https://admin.punchify.apperreichen (tägliche Lizenzprüfung). - Ein Lizenzschlüssel – kostenlos für bis zu 5 Personen oder als 60-Tage-Test über punchify.app.
In drei Schritten
1. Dateien holen
mkdir punchify && cd punchify
curl -fsSLO https://punchify.app/install/docker-compose.yml
curl -fsSLO https://punchify.app/install/Caddyfile
curl -fsSL https://punchify.app/install/env.example -o .env
2. Konfiguration eintragen
nano .env
Mindestens nötig sind: PUNCHIFY_DOMAIN, ACME_EMAIL, PUNCHIFY_LICENSE_KEY, zwei Zufallswerte für PUNCHIFY_DB_PASSWORD und PUNCHIFY_SECRET_KEY sowie E-Mail und Passwort des ersten Admins. Zufallswerte erzeugen Sie zum Beispiel mit:
openssl rand -hex 32
Alle Einstellungen erklärt die Seite Konfiguration.
3. Starten
docker compose up -d
Nach etwa einer Minute ist Punchify unter https://<Ihre Domain> erreichbar. Melden Sie sich mit der E-Mail-Adresse und dem Passwort aus PUNCHIFY_ADMIN_EMAIL und PUNCHIFY_ADMIN_PASSWORD an – und ändern Sie das Passwort danach unter Einstellungen. Weiter geht es mit den ersten Schritten.
Wichtig: Bewahren Sie
PUNCHIFY_SECRET_KEYsicher auf (z. B. im Passwortmanager). Ohne diesen Schlüssel lassen sich die Sicherungen nicht zurückspielen.
Was wo liegt
| Container | Aufgabe | Daten (Docker-Volume) |
|---|---|---|
app |
Punchify selbst | punchify-data – u. a. die nächtlichen Sicherungen unter /data/backups |
db |
PostgreSQL 16 | db-data |
caddy |
Webserver, HTTPS | caddy-data, caddy-config (Zertifikate) |
Prüfen, ob alles läuft
docker compose ps
docker compose logs app --tail 50
curl -fsS https://<Ihre Domain>/healthz
/healthz antwortet mit {"status":"ok", "version": …}, sobald die App bereit ist.
Von Punchify betreiben lassen
Wenn Sie sich nicht um einen Server kümmern möchten, betreiben wir Punchify für Sie in einem Rechenzentrum in Nürnberg – mit eigener Adresse wie ihrefirma.punchify.app, automatischen Updates und Sicherungen. Siehe Preise.