chore: echte Appwrite-Projekt-ID übernehmen

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
ClaudeandClaude Opus 5.5 committed 2026-10-04 09:38:32 +00:00
1 parent 38b361ad7a
commit 94f6d74249
7 files changed
+49 -24

No files matched your search

+3 -2
View File
@@ -9,7 +9,7 @@ Die Seite wird auf dem Webklar-Server aus dem Gitea-Repo `knso/AirCardIOS` gebau
| `deploy/deploy.sh` | `aircard-ios.org/deploy.sh` (ausführbar) | klont/aktualisiert das Repo, baut `web/` und kopiert `dist/` nach `out/` |
| `deploy/webhook-server.js` | `aircard-ios.org/webhook-server.js` | nimmt den Gitea-Webhook an, startet `deploy.sh` nacheinander, pollt alle 15 Minuten |
| `deploy/nginx/aircard-ios.org.conf` | `aircard-ios.org/nginx/aircard-ios.org.conf` | nginx-Konfiguration der Seite |
| `deploy/traefik/aircard.yml` | `traefik/dynamic/aircard.yml` | Route `/v1` mit Header `X-Appwrite-Project: aircard` an Appwrite |
| `deploy/traefik/aircard.yml` | `traefik/dynamic/aircard.yml` | Route `/v1` mit Header `X-Appwrite-Project: 6ac2130a00289343d6d5` an Appwrite |
| `deploy/compose-snippet.yml` | `docker-compose.yml` (nach dem eship-Block) | Dienste `aircard-build` und `aircard` |
Weitere Ordner unter `aircard-ios.org/` (nicht im Repo): `build/` (Klon des Repos, Arbeitsordner des Build-Containers), `out/` (gebaute Seite, von nginx ausgeliefert), `dev/` (Arbeitskopie für die Entwicklung, nicht gemountet).
@@ -76,7 +76,8 @@ Repo `knso/AirCardIOS` → Einstellungen → Webhooks → Gitea:
- **Trigger**: `webhook` und manuelle Aufrufe bauen immer. `initial` (Container-Start) und `poll` (alle 15 Minuten) bauen nur, wenn es einen neuen Commit gibt oder `out/index.html` fehlt.
- **Gemerkter Commit**: `build/.git/aircard-last-deployed-commit` enthält den zuletzt **versuchten** Commit, geschrieben vor dem Build. Ein kaputter Build wird deshalb nicht alle 15 Minuten wiederholt; die alte Seite bleibt online, bis ein neuer Commit oder ein Webhook-/manueller Lauf kommt.
- **Fehler**: Ein fehlgeschlagener Lauf wird mit `[webhook] … deployment failed` protokolliert und beendet den Server nicht. Fehlerzeilen des Skripts beginnen mit `ERROR:`.
- **Build-Variablen**: `VITE_APPWRITE_ENDPOINT` und `VITE_APPWRITE_PROJECT_ID` kommen aus der Container-Umgebung (compose); Vite liest sie direkt.
- **Build-Variablen**: `VITE_APPWRITE_ENDPOINT` und `VITE_APPWRITE_PROJECT_ID` kommen aus der Container-Umgebung (compose); `AIRCARD_APPWRITE_PROJECT_ID` wird aus `/home/webklar/apps/.env` gelesen. Vite liest sie direkt.
- **.env-Variablen**: `AIRCARD_APPWRITE_PROJECT_ID` (Projekt-ID `6ac2130a00289343d6d5`) und `AIRCARD_APPWRITE_API_KEY` (für das Setup-Skript) müssen in `/home/webklar/apps/.env` eingetragen sein.
## Änderungen später
+2 -1
View File
@@ -6,6 +6,7 @@
# Starten NUR mit: docker compose up -d aircard-build aircard
# (ein nacktes `up -d` würde andere Dienste wieder anlegen)
# Die Appwrite-Route liegt als Datei in traefik/dynamic/aircard.yml.
# AIRCARD_APPWRITE_PROJECT_ID kommt aus /home/webklar/apps/.env.
# ==============================================
aircard-build:
image: node:22-alpine
@@ -28,7 +29,7 @@
- POLL_INTERVAL_MINUTES=15
- NODE_OPTIONS=--max-old-space-size=512
- VITE_APPWRITE_ENDPOINT=https://aircard-ios.org/v1
- VITE_APPWRITE_PROJECT_ID=aircard
- VITE_APPWRITE_PROJECT_ID=${AIRCARD_APPWRITE_PROJECT_ID}
volumes:
- ./aircard-ios.org/build:/app
- ./aircard-ios.org/out:/out
+3 -3
View File
@@ -1,7 +1,7 @@
# Appwrite-Route für aircard-ios.org (Projekt "aircard" auf der bestehenden Appwrite-Instanz).
# Appwrite-Route für aircard-ios.org (Projekt mit ID `6ac2130a00289343d6d5` auf der bestehenden Appwrite-Instanz).
#
# Das Frontend ruft https://aircard-ios.org/v1/... auf und sendet den Header
# X-Appwrite-Project: aircard. Nur Anfragen MIT diesem Header gehen an Appwrite; alles andere
# X-Appwrite-Project: 6ac2130a00289343d6d5. Nur Anfragen MIT diesem Header gehen an Appwrite; alles andere
# unter /v1 (z. B. ein <img src> oder ein Aufruf ohne Header) landet beim nginx der Seite und
# bekommt dort 404.
#
@@ -13,7 +13,7 @@
http:
routers:
aircard-api:
rule: "Host(`aircard-ios.org`) && PathPrefix(`/v1`) && Header(`X-Appwrite-Project`, `aircard`)"
rule: "Host(`aircard-ios.org`) && PathPrefix(`/v1`) && Header(`X-Appwrite-Project`, `6ac2130a00289343d6d5`)"
entryPoints:
- websecure
service: appwrite@docker