Files
w-make-portfolio/DEPLOYMENT.md
T
Jan Wagner 1f37edfa46 docs: add VPS deployment guide and script
- deploy-vps.sh: automated deployment script
- DEPLOYMENT.md: comprehensive deployment documentation
  - Manual and automated deployment steps
  - Validation checklist
  - Troubleshooting guide
  - Expected metrics after 7 days

Ready for VPS deployment via SSH
2026-08-22 16:32:46 +02:00

5.8 KiB

W-Make Portfolio VPS Deployment Guide

Generiert: 2026-08-22
Commits: c822a11, 7228fee, 4717404
Änderungen: Hero-Copy, Demo-CTA, Benefit-Liste, SEO, Mobile-Optimierung


Was wurde geändert

Content:

  • Hero H1: "Wenn Zahlen zwischen Schichten verschwinden..." (statt Fachsprache)
  • Neue Demo-CTA Section nach Hero
  • CTA-Box mit Benefit-Checklist (✓ 2 Tage Response, ✓ Ehrliche Einschätzung, ✓ Keine Folien)
  • Aside erweitert: erklärt Versagensmodell

Technical:

  • "type": "module" in package.json (behebt Node.js Warnungen)
  • /api/health endpoint hinzugefügt
  • Twitter Card + OG Image Support
  • Meta Descriptions aktualisiert
  • Mobile Touch-Targets (44x44px WCAG 2.1 AA)
  • Responsive Typography mit clamp()

🚀 Deployment auf free-warez.win VPS

Option A: Automatisches Script (empfohlen)

# 1. SSH zum VPS
ssh eldov@free-warez.win  # oder 100.90.92.125

# 2. Script von lokal kopieren (von deinem Laptop aus)
scp /home/eldov-ryzen5/workspace/Coding/Web/w-make-com/deploy-vps.sh \
    eldov@free-warez.win:~/

# 3. Auf VPS ausführen
ssh eldov@free-warez.win
bash ~/deploy-vps.sh

Option B: Manuelle Schritte

# 1. SSH zum VPS
ssh eldov@free-warez.win

# 2. Zum Projekt (Pfad anpassen falls anders)
cd /home/eldov/projects/w-make-portfolio  # oder /opt/ oder /srv/
# Falls unsicher: find / -name "w-make-portfolio" -type d 2>/dev/null

# 3. Git pull
git pull origin main

# Erwartete Commits:
# 4717404 feat: complete SEO and mobile Quick Wins
# 7228fee feat(homepage): improve hero copy and CTA conversion
# c822a11 chore: add ES module type, health endpoint, and security docs

# 4. Docker neu bauen
docker-compose build w-make-portfolio

# 5. Container neu starten
docker-compose up -d w-make-portfolio

# 6. Warten & Health-Check
sleep 5
curl http://localhost:3000/api/health

# Erwartete Antwort:
# {"status":"ok","timestamp":"2026-08-22T...","service":"w-make-portfolio"}

# 7. Logs prüfen
docker-compose logs --tail=30 w-make-portfolio

# Erwartete Zeile:
# ✓ Ready in XXXms
# ○ Local: http://0.0.0.0:3000

Validierung nach Deployment

1. Homepage testen (https://w-make.com)

Hero-Section:

✓ H1: "Wenn Zahlen zwischen Schichten verschwinden, liegt es meist an der Software."
✓ Aside: "Die Software kennt die Reihenfolge nicht."
✓ Aside erwähnt: "stille Korrekturen und Zahlen, die morgens nicht mehr stimmen"

Demo-CTA:

✓ Nach Hero erscheint Section mit dunklerem Hintergrund
✓ Text: "W-Make Batch live erleben"
✓ Subtext: "Öffentliche Demo ohne Anmeldung · batch.w-make.com"
✓ Button: "Demo öffnen →" (führt zu https://batch.w-make.com)

CTA-Box (am Ende):

✓ Kicker: "30-Min. Erstanalyse · Kostenlos"
✓ H2: "Beschreiben Sie den Prozess, der heute bricht."
✓ Benefit-Liste mit ✓-Symbolen:
  ✓ Antwort innerhalb von 2 Werktagen
  ✓ Ehrliche Einschätzung, ob ich den Fall führen kann
  ✓ Keine Folien nötig, nur Verständnis des Ablaufs
✓ Button hat Hover-Effekt (copper-deep)

2. Meta-Tags validieren

Open Graph:

curl -sI https://w-make.com | grep -i "content-type\|x-"

Tools:

Erwartete OG-Werte:

  • Title: "Jan Wagner · Software für industrielle Prozesse"
  • Description: "Software für industrielle Prozesse, in denen Rezept, Material..."
  • Image: 1200x630 mit neuem Hero-Text

3. Mobile-Test

Chrome DevTools:

F12 → Toggle Device Toolbar (Ctrl+Shift+M)
Testen auf:
  - iPhone SE (375px)
  - iPad (768px)
  - Desktop (1920px)

Prüfen:

✓ Touch-Targets mind. 44x44px
✓ Hero-H1 skaliert mit clamp() (nicht abgeschnitten)
✓ Sections haben reduzierten Padding auf Mobile
✓ Alle Links/Buttons klickbar ohne Zoom

4. Health-Endpoint

curl https://w-make.com/api/health

# Erwartete Antwort:
{
  "status": "ok",
  "timestamp": "2026-08-22T...",
  "service": "w-make-portfolio"
}

🐛 Troubleshooting

Container startet nicht

# Logs prüfen
docker-compose logs w-make-portfolio

# Häufige Probleme:
# - Port 3000 bereits belegt
# - .env.local fehlt
# - Node.js Build-Fehler

Health-Endpoint 404

# Prüfen ob Route existiert
docker-compose exec w-make-portfolio ls -la /app/.next/server/app/api/health/

# Falls nicht: Build war nicht vollständig
docker-compose build --no-cache w-make-portfolio
docker-compose up -d w-make-portfolio

Alte Version noch online

# Hard-Refresh im Browser (Ctrl+Shift+R)
# Oder Traefik-Cache clearen (wenn vorhanden)

# Prüfen welche Version läuft:
docker-compose exec w-make-portfolio cat /app/package.json | grep version

Git Pull schlägt fehl

# Auth-Problem mit Gitea
git remote -v
# Falls SSH: git remote set-url origin https://gitea.free-warez.win/eldov/w-make-portfolio.git

# Untracked files im Weg
git status
git stash  # Lokale Änderungen sichern
git pull origin main

📊 Erwartete Metriken (nach 7 Tagen)

Metrik Erwartet
Bounce Rate -15% bis -25%
Avg. Session Duration +30s bis +60s
Demo-Klicks 5-10% aller Besucher
Contact Form Views +20% bis +40%
Mobile Bounce -10% bis -15%

📝 Notizen

  • Code liegt auf Laptop: /home/eldov-ryzen5/workspace/Coding/Web/w-make-com
  • Git-Remote: https://gitea.free-warez.win/eldov/w-make-portfolio.git
  • VPS Tailscale: 100.90.92.125
  • Alle Tests bestanden (17/17)
  • Build erfolgreich (Next.js 16.3.1)

Commit-IDs für Rollback (falls nötig):

git log --oneline -5
# 4717404 feat: complete SEO and mobile Quick Wins
# 7228fee feat(homepage): improve hero copy and CTA conversion
# c822a11 chore: add ES module type, health endpoint, and security docs
# 042ea88 feat(site): rewrite public copy around the batch chain  ← Fallback