Initial Kaffeekasse SaaS restart
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
# Deployment auf Netcup Webspace
|
||||
|
||||
## Zielbild
|
||||
|
||||
- Code unter einem Release-Pfad wie `/apps/kaffeekasse/current`
|
||||
- Document Root in Plesk auf `/apps/kaffeekasse/current/public`
|
||||
- `.env` ausserhalb des Webroots oder direkt im Projektverzeichnis ohne
|
||||
Webzugriff
|
||||
- Migrationen ueber `bin/migrate.php`
|
||||
- zyklische Aufgaben ueber `bin/cron.php`
|
||||
|
||||
## Erstinstallation
|
||||
|
||||
1. Neue Domain oder Subdomain im Netcup WCP/Plesk anlegen.
|
||||
2. Document Root auf das Verzeichnis `public/` des Releases zeigen lassen.
|
||||
3. MySQL-Datenbank und separaten User anlegen.
|
||||
4. Projekt per FTPES oder SFTP hochladen.
|
||||
5. Installer unter `/install` aufrufen oder `.env` manuell setzen.
|
||||
6. Alternativ oder zusaetzlich:
|
||||
`/usr/local/php83/bin/php /apps/kaffeekasse/current/bin/migrate.php`
|
||||
7. Plattform-Admin einloggen und ersten Mandanten registrieren.
|
||||
|
||||
## Scheduled Tasks
|
||||
|
||||
- Alle 5 Minuten:
|
||||
`/usr/local/php83/bin/php /apps/kaffeekasse/current/bin/cron.php`
|
||||
- Optional Healthcheck:
|
||||
`/usr/local/php83/bin/php /apps/kaffeekasse/current/bin/healthcheck.php`
|
||||
|
||||
## Release-Prozess
|
||||
|
||||
1. `scripts/build-release.sh` erzeugt ein auslieferbares Paket.
|
||||
2. Paket hochladen und entpacken.
|
||||
3. `.env` und persistente `storage/`-Pfade sichern.
|
||||
4. `bin/migrate.php` ausfuehren.
|
||||
5. Healthcheck und Login pruefen.
|
||||
|
||||
## Sicherheitshinweise
|
||||
|
||||
- `public/` bleibt der einzige Webroot.
|
||||
- `.env`, Dumps, Backups und `.git` duerfen nicht oeffentlich erreichbar sein.
|
||||
- Fuer produktive Domains HTTPS erzwingen.
|
||||
- Session-Cookies sind auf `HttpOnly`, `SameSite=Lax` und `Secure` ausgelegt.
|
||||
- Tenant-Daten werden serverseitig ueber Session und Memberships zugeordnet.
|
||||
|
||||
## Git-Remote vorbereiten
|
||||
|
||||
Beispiel fuer spaeteres Pushen auf `git.ctb-it.de`:
|
||||
|
||||
```bash
|
||||
git remote add origin ssh://git@git.ctb-it.de/namespace/kaffeekasse-saas.git
|
||||
git push -u origin main
|
||||
```
|
||||
|
||||
Die genaue URL haengt von eurem Namespace und dem Zielsystem ab.
|
||||
Reference in New Issue
Block a user