.env commit

This commit is contained in:
Basilosaurusrex committed 2026-02-06 19:46:26 +01:00
1 parent 82668796d6
commit 305de38ff6
5 files changed
+108 -4

No files matched your search

+34
View File
@@ -0,0 +1,34 @@
# Deployment auf dem Server
## .env wird nicht mit Git übertragen
Die Datei **`.env`** steht in `.gitignore` und wird beim `git push` **nicht** mit ins Repository übernommen. Auf dem Server fehlen dadurch die Umgebungsvariablen für Appwrite – die Meldung *"Appwrite ist nicht konfiguriert"* entsteht genau deshalb.
## Lösung: .env auf dem Server anlegen
**Im Repo mitgepusht:** `.env.example`, `scripts/setup-env.cjs`, und die Script-Einträge in `package.json` (`setup:env`, `deploy:server`). Die `.env` wird weiterhin **nicht** ins Git aufgenommen.
**Nach dem ersten Klonen oder nach jedem Pullen auf dem Server:**
**Option A – ein Befehl (empfohlen):**
Legt `.env` aus `.env.example` an (falls noch nicht vorhanden) und baut die App:
```bash
npm run deploy:server
```
**Option B – einzeln:**
Nur `.env` anlegen (überschreibt keine bestehende `.env`):
```bash
npm run setup:env
npm run build
```
**Option C – mit deploy.sh / Container:**
Wenn auf dem Server ein `deploy.sh` und Docker/Compose genutzt werden: Nach `git pull` kann `deploy.sh` die `.env` aus `.env.example` erzeugen (falls fehlend) und vor jedem Build eine `.env.local` aus den Container-Umgebungsvariablen schreiben (z. B. alle `VITE_APPWRITE_*`). So kommt die Appwrite-Konfiguration zuverlässig ins Frontend-Build. Ein Neustart von Nginx ist in der Regel nicht nötig; der neue Build liegt in `/out` (oder dem konfigurierten Ausgabeordner).
**Option D – manuell:**
`.env` selbst anlegen mit dem Inhalt von `.env.example` oder den Werten aus dieser Doku, danach `npm run build`.
**.env nicht committen** – sie bleibt nur lokal bzw. auf dem Server und enthält projektspezifische Werte.
+36
View File
@@ -0,0 +1,36 @@
# Prompt für KI mit Server-Zugriff (automatisches .env + Build)
Kopiere den folgenden Block und gib ihn einer KI, die Zugriff auf deinen Server hat (z. B. Cursor Agent, SSH-Terminal, Deployment-KI).
---
## Prompt (zum Kopieren)
```
Kontext: Das Projekt ist eine Vite/React-Webapp (Webklar). Die Datei .env wird aus Sicherheitsgründen nicht mit Git mitgepusht. Auf dem Server fehlt sie deshalb nach git pull – dadurch erscheint die Meldung "Appwrite ist nicht konfiguriert".
Aufgabe:
1. In das Projektverzeichnis der Webklar-App wechseln (dort wo package.json und .env.example liegen).
2. .env aus der Vorlage anlegen, falls sie noch nicht existiert:
- Befehl ausführen: npm run setup:env
- (Das Skript kopiert .env.example nach .env und überschreibt keine bestehende .env.)
3. Die App neu bauen, damit die Umgebungsvariablen ins Frontend kommen:
- Befehl ausführen: npm run build
4. Optional: Den Webserver/Prozess neu starten (z. B. PM2, systemd, nginx), der die gebauten Dateien aus dist/ ausliefert oder die App betreibt.
Alternativ kannst du in einem Schritt beides machen: npm run deploy:server (legt .env an, falls fehlend, und führt danach vite build aus).
Wichtig: Im Projektroot ausführen, also dort wo package.json und scripts/setup-env.js liegen.
```
---
## Kurzversion (nur Befehle)
Wenn die KI schon im richtigen Projektordner ist:
```
Führe nacheinander aus:
1. npm run deploy:server
2. [Webserver/App neu starten, falls nötig – z. B. pm2 restart webklar oder systemctl restart dein-service]
```