55 lines
2.3 KiB
Markdown
55 lines
2.3 KiB
Markdown
# LeoCRM Deployment Guide
|
|
|
|
## Coolify Deployment
|
|
|
|
### Application Info
|
|
- **Coolify App UUID:** `stvabl4vaqru7jclx4ittzr3`
|
|
- **App ID:** 12
|
|
- **Domain:** `https://crm.media-on.de`
|
|
- **Git Repo:** `https://forgejo.media-on.de/Leopoldadmin/leocrm.git`
|
|
- **Branch:** `main`
|
|
- **Build Pack:** Dockerfile (Multi-Stage: Frontend + Backend)
|
|
- **Health Check:** `GET /api/v1/health` → 200
|
|
|
|
### Deploy Process
|
|
1. **Code pushen:** `git push origin main`
|
|
2. **Coolify Deploy triggern:**
|
|
- Option A: Coolify Dashboard → `https://server.media-on.de` → App → Deploy
|
|
- Option B: API: `POST https://server.media-on.de/api/v1/deploy` mit `{"uuid": "stvabl4vaqru7jclx4ittzr3"}`
|
|
3. **Build dauert ~2-5 Min** (Multi-Stage: npm install + vite build + pip install + runtime)
|
|
4. **Container wird automatisch ausgetauscht** wenn Build erfolgreich
|
|
|
|
### Manueller Build (Fallback)
|
|
Wenn Coolify den Build nicht ausführt:
|
|
```bash
|
|
ssh root@46.225.91.159
|
|
cd /tmp && git clone https://Leopoldadmin:<token>@forgejo.media-on.de/Leopoldadmin/leocrm.git leocrm-build
|
|
cd leocrm-build
|
|
docker build -t stvabl4vaqru7jclx4ittzr3:<commit-hash> .
|
|
cd /data/coolify/applications/stvabl4vaqru7jclx4ittzr3
|
|
# docker-compose.yaml Image-Tag aktualisieren
|
|
# .env SOURCE_COMMIT aktualisieren
|
|
docker compose up -d
|
|
docker stop <old-container> && docker rm <old-container>
|
|
```
|
|
|
|
### Bekannte Probleme
|
|
- **Build schlägt fehl bei JSX/TS-Fehlern:** Vite-Build bricht ab → Coolify zeigt FAIL nach ~30s
|
|
- **docker-compose.yaml wird VOR dem Build aktualisiert:** Wenn Build fehlschlägt, bleibt nicht-existentes Image in der Config
|
|
- **Coolify Queue kann hängen:** Manchmal wird Deploy gequeued aber nicht verarbeitet — dann manuell bauen
|
|
|
|
### Pre-Deploy Checklist
|
|
- [ ] `npx tsc --noEmit` — keine neuen TSC-Fehler (pre-existing Dms.tsx errors sind OK)
|
|
- [ ] `npx vite build` — Frontend-Build erfolgreich
|
|
- [ ] `git push origin main` — Code auf Forgejo
|
|
- [ ] Coolify Deploy triggern
|
|
- [ ] Health-Check: `curl https://crm.media-on.de/api/v1/health`
|
|
|
|
### Server Info
|
|
- **Host:** `46.225.91.159` (coolify-01)
|
|
- **SSH Key:** `/a0/usr/workdir/.ssh/coolify-01-root`
|
|
- **Coolify API Token:** `2|UnMMp2WYbXFJCrOuZ1yqSK96hMooPTAfAJPIXiQc1e47154e`
|
|
- **Coolify Dashboard:** `https://server.media-on.de`
|
|
- **PostgreSQL:** `crm-postgres` container (pgvector/pgvector:pg16)
|
|
- **Redis:** `crm-redis` container
|