Compare commits

..

2 commits

Author SHA1 Message Date
b401c2fbdf Merge branch 'main' of gitpot.org:tbz/m158 2024-07-10 23:07:27 +02:00
21fb909727 [c] formatting 2024-07-10 23:05:38 +02:00
2 changed files with 41 additions and 46 deletions

View file

@ -2,26 +2,25 @@
## Inhaltsverzeichnis
- [Modul 158: Softwaremigration Planen und Durchführen](#modul-158-softwaremigration-planen-und-durchführen)
- [Inhaltsverzeichnis](#inhaltsverzeichnis)
- [Einleitung](#einleitung)
- [Informieren](#informieren)
- [Planen](#planen)
- [Ziele](#ziele)
- [Must-have](#must-have)
- [Nice to have](#nice-to-have)
- [Low priority](#low-priority)
- [To-do](#to-do)
- [Panel](#panel)
- [Wings](#wings)
- [Post-Installation](#post-installation)
- [Migrationsplan](#migrationsplan)
- [Serverressourcen](#serverressourcen)
- [Entscheiden](#entscheiden)
- [Realisieren](#realisieren)
- [Kontrollieren](#kontrollieren)
- [Testen](#testen)
- [Auswerten](#auswerten)
- [Inhaltsverzeichnis](#inhaltsverzeichnis)
- [Einleitung](#einleitung)
- [Informieren](#informieren)
- [Planen](#planen)
- [Ziele](#ziele)
- [Must-have](#must-have)
- [Nice to have](#nice-to-have)
- [Low priority](#low-priority)
- [To-do](#to-do)
- [Panel](#panel)
- [Wings](#wings)
- [Post-Installation](#post-installation)
- [Migrationsplan](#migrationsplan)
- [Serverressourcen](#serverressourcen)
- [Entscheiden](#entscheiden)
- [Realisieren](#realisieren)
- [Kontrollieren](#kontrollieren)
- [Testen](#testen)
- [Auswerten](#auswerten)
## Einleitung
@ -39,19 +38,18 @@ Damit die Migration von dem Pterodactyl Gameserver Panel reibungslos verläuft,
#### Must-have
- [ ] Minecraft Server 100% migriert (inkl. save data)
- [ ] Funktionelles Wings Backend
- [ ] Virtualisiertes Wings & Panel
- [x] Funktionelles Wings Backend
- [x] Virtualisiertes Wings & Panel
- [x] Reverse Proxy
- [ ] Backups
- [x] 2FA
#### Nice to have
- [ ] Virtualisiertes Wings Panel mit dedizierter IP Adresse
- [x] 2FA
#### Low priority
- no tasks here
- [ ] Backups
### To-do
@ -68,7 +66,7 @@ Damit die Migration von dem Pterodactyl Gameserver Panel reibungslos verläuft,
- [x] Setup VM
- [x] Check if all dependencies are met. (`curl`, `docker`)
- [ ] Download and Configure Wings
- [x] Download and Configure Wings
#### Post-Installation

View file

@ -2,14 +2,13 @@
## Inhaltsverzeichnis
- [Realisieren: Panel](#realisieren-panel)
- [Inhaltsverzeichnis](#inhaltsverzeichnis)
- [LXC Container](#lxc-container)
- [Docker Image und Compose vorbereiten](#docker-image-und-compose-vorbereiten)
- [Deployment vom Panel](#deployment-vom-panel)
- [2FA](#2fa)
- [Reverse Proxy](#reverse-proxy)
- [Probleme](#probleme)
- [Inhaltsverzeichnis](#inhaltsverzeichnis)
- [LXC Container](#lxc-container)
- [Docker Image und Compose vorbereiten](#docker-image-und-compose-vorbereiten)
- [Deployment vom Panel](#deployment-vom-panel)
- [2FA](#2fa)
- [Reverse Proxy](#reverse-proxy)
- [Probleme](#probleme)
## LXC Container
@ -93,35 +92,33 @@ If you would like to create an account with a random password emailed to the use
Die erste Benutzereinrichtung wird über die Commandline im Container vorgenommen. Danach können Benutzer einfach über das Webinterface eingerichtet werden.
### 2FA
Sobald das Panel live ist, kann man mit einem Administratorenkonto unter "Admin Control" am folgenden Ort 2FA aktivieren.
> [!CAUTION]
> Dies erzwingt 2FA sofort auch für den angemeldeten Accounts
![basic administration -> settings -> general -> "Require 2-Factor Authentication" to "All Users"](../../assets/panel/enable-2fa.png)
## Reverse Proxy
## Reverse Proxy
Das Caddyfile leitet alle Anfragen an `nugget.sangelo.space` über einen Reverse-Proxy an den Server `10.1.30.1:2080` weiter und sagt Caddy es soll die IP und location des Host auch mit sended um die standart Konfiguration von Caddy ignorieren.
```Caddy
nugget.sangelo.space {
reverse_proxy https://10.1.30.1:2443 {
header_up X-Real-IP {remote_host}
header_up X-Forwarded-For {remote_host}
header_up Host {upstream_hostport}
}
reverse_proxy https://10.1.30.1:2443 {
header_up X-Real-IP {remote_host}
header_up X-Forwarded-For {remote_host}
header_up Host {upstream_hostport}
}
}
```
## Probleme
Nach dem Deployen vom Panel hatten wir das Problem, dass nach jeder Änderung im Panel ein Server Error 500 aufgetaucht ist. Dank einem [offenen Issue](https://github.com/pterodactyl/panel/issues/5051) haben wir erkannt, dass es sich um ein Berechtigungsfehler im Container handelt. Nachdem wir beim erneuten Deployment folgenden Befehl `docker compose exec panel chown -R nginx: /app/storage/logs/` verwendet haben, hat alles funktioniert.
Nach dem Deployen vom Panel hatten wir das Problem, dass nach jeder Änderung im Panel ein Server Error 500 aufgetaucht ist. Dank einem [offenen Issue](https://github.com/pterodactyl/panel/issues/5051) haben wir erkannt, dass es sich um ein Berechtigungsfehler im Container handelt.
Dieser Befehl ändert den Besitzer der Ordners `/app/storage/logs` auf den User Nginx, was nötig ist, da der Webserver ansonsten keine Logs schreiben kann.
Nachdem wir beim erneuten Deployment folgenden Befehl `docker compose exec panel chown -R nginx: /app/storage/logs/` verwendet haben, hat alles funktioniert.
Dieser Befehl ändert den Besitzer der Ordners `/app/storage/logs` auf den User Nginx, was nötig ist, da der Webserver ansonsten keine Logs schreiben kann.