chore: migrate server URLs from IP to bollwerk.online domain

Replace all HTTP references to 195.246.231.210 with bollwerk.online
across skills, prompts, scripts, and app default settings:

- Dockerfile: rename KRISENVORRAT_JWT_SECRET to BOLLWERK_JWT_SECRET
- SettingsKey.kt: default server URL now http://bollwerk.online:8080
- publish SKILL/prompt/script: HTTP URLs updated to bollwerk.online
- vps-deploy SKILL: Admin-UI and health-check URLs updated
- run-integration-tests.ps1: default BaseUrl updated

SSH commands (ssh/scp) intentionally kept on IP, as DNS is not
used for SSH access.
This commit is contained in:
Jens Reinemann 2026-05-17 18:22:17 +02:00
parent 83ef83f4e7
commit e0130910af
7 changed files with 17 additions and 17 deletions

View file

@ -56,5 +56,5 @@ Berichte kurz:
- Build/Test-Status (✅ / ❌) - Build/Test-Status (✅ / ❌)
- Push-Status (✅ / ❌) - Push-Status (✅ / ❌)
- VPS-Deployment (✅ / ❌) - VPS-Deployment (✅ / ❌)
- Homepage-URL: `http://195.246.231.210:8080/` - Homepage-URL: `http://bollwerk.online:8080/`
- Version-API: `http://195.246.231.210:8080/api/version` - Version-API: `http://bollwerk.online:8080/api/version`

View file

@ -15,7 +15,7 @@ Dieser Skill deckt den vollständigen Workflow ab, um eine neue App-Version auf
## Architektur-Überblick ## Architektur-Überblick
``` ```
App (lokal) VPS (195.246.231.210) App (lokal) VPS (bollwerk.online)
───────────── ───────────────────── ───────────── ─────────────────────
app/build.gradle.kts /opt/bollwerk/ app/build.gradle.kts /opt/bollwerk/
versionCode / versionName ├── docker-compose.yml (BOLLWERK_APP_VERSION_CODE/NAME) versionCode / versionName ├── docker-compose.yml (BOLLWERK_APP_VERSION_CODE/NAME)
@ -88,15 +88,15 @@ ssh root@195.246.231.210 "cd /opt/bollwerk && docker compose up -d"
```powershell ```powershell
# Version-API prüfen # Version-API prüfen
Invoke-WebRequest -Uri "http://195.246.231.210:8080/api/version" -UseBasicParsing | Select-Object -ExpandProperty Content Invoke-WebRequest -Uri "http://bollwerk.online:8080/api/version" -UseBasicParsing | Select-Object -ExpandProperty Content
# Homepage prüfen (QR-Code-Seite) # Homepage prüfen (QR-Code-Seite)
Invoke-WebRequest -Uri "http://195.246.231.210:8080/" -UseBasicParsing | Select-Object StatusCode, StatusDescription Invoke-WebRequest -Uri "http://bollwerk.online:8080/" -UseBasicParsing | Select-Object StatusCode, StatusDescription
``` ```
Erwartete Ausgabe von `/api/version`: Erwartete Ausgabe von `/api/version`:
```json ```json
{"versionCode":<neuer_code>,"versionName":"<neuer_name>","apkUrl":"http://195.246.231.210:8080/static/app-latest.apk"} {"versionCode":<neuer_code>,"versionName":"<neuer_name>","apkUrl":"http://bollwerk.online:8080/static/app-latest.apk"}
``` ```
--- ---

View file

@ -83,7 +83,7 @@ if ($SkipVerify) {
Start-Sleep -Seconds 5 Start-Sleep -Seconds 5
try { try {
$response = Invoke-WebRequest -Uri "http://195.246.231.210:8080/api/version" -UseBasicParsing -TimeoutSec 10 $response = Invoke-WebRequest -Uri "http://bollwerk.online:8080/api/version" -UseBasicParsing -TimeoutSec 10
$versionJson = $response.Content | ConvertFrom-Json $versionJson = $response.Content | ConvertFrom-Json
if ($versionJson.versionCode -eq $VersionCode -and $versionJson.versionName -eq $VersionName) { if ($versionJson.versionCode -eq $VersionCode -and $versionJson.versionName -eq $VersionName) {
@ -94,10 +94,10 @@ if ($SkipVerify) {
} }
} catch { } catch {
Write-Warning "Verifizierung fehlgeschlagen: $_" Write-Warning "Verifizierung fehlgeschlagen: $_"
Write-Host "Manuell pruefen: http://195.246.231.210:8080/api/version" -ForegroundColor DarkGray Write-Host "Manuell pruefen: http://bollwerk.online:8080/api/version" -ForegroundColor DarkGray
} }
} }
Write-Host "`n=== Publish abgeschlossen ===" -ForegroundColor Cyan Write-Host "`n=== Publish abgeschlossen ===" -ForegroundColor Cyan
Write-Host "Homepage: http://195.246.231.210:8080/" -ForegroundColor DarkGray Write-Host "Homepage: http://bollwerk.online:8080/" -ForegroundColor DarkGray
Write-Host "API: http://195.246.231.210:8080/api/version" -ForegroundColor DarkGray Write-Host "API: http://bollwerk.online:8080/api/version" -ForegroundColor DarkGray

View file

@ -127,7 +127,7 @@ Der Server nutzt JWT-basierte Authentifizierung (kein API-Key mehr).
### Admin-Zugang ### Admin-Zugang
- **Admin-UI:** `http://195.246.231.210:8080/admin/` - **Admin-UI:** `http://bollwerk.online:8080/admin/`
- **Admin-User:** `admin` - **Admin-User:** `admin`
- **Admin-Passwort:** Der User muss das Passwort selbst eingeben. Es ist NICHT gespeichert bei Bedarf den User fragen. - **Admin-Passwort:** Der User muss das Passwort selbst eingeben. Es ist NICHT gespeichert bei Bedarf den User fragen.
- Beim ersten Start ohne `BOLLWERK_ADMIN_PASSWORD` ENV wird ein zufälliges Passwort generiert und in die Logs geschrieben. - Beim ersten Start ohne `BOLLWERK_ADMIN_PASSWORD` ENV wird ein zufälliges Passwort generiert und in die Logs geschrieben.
@ -183,7 +183,7 @@ ssh root@195.246.231.210 "docker logs bollwerk-server -f"
```powershell ```powershell
# Vom lokalen PC # Vom lokalen PC
Invoke-WebRequest -Uri "http://195.246.231.210:8080/api/health" -UseBasicParsing Invoke-WebRequest -Uri "http://bollwerk.online:8080/api/health" -UseBasicParsing
# Auf dem VPS direkt # Auf dem VPS direkt
ssh root@195.246.231.210 "curl -s http://localhost:8080/api/health" ssh root@195.246.231.210 "curl -s http://localhost:8080/api/health"

View file

@ -15,7 +15,7 @@ COPY --from=builder /app/server/build/libs/server.jar server.jar
# Create data directory for APK hosting # Create data directory for APK hosting
RUN mkdir -p /app/data RUN mkdir -p /app/data
ENV KRISENVORRAT_JWT_SECRET="change-me-to-a-secure-jwt-secret-at-least-32-chars" ENV BOLLWERK_JWT_SECRET="change-me-to-a-secure-jwt-secret-at-least-32-chars"
EXPOSE 8080 EXPOSE 8080

View file

@ -23,7 +23,7 @@ internal sealed class SettingsKey<T>(val key: String, val defaultValue: T) {
} }
companion object { companion object {
const val DEFAULT_SERVER_URL = "http://195.246.231.210:8080" const val DEFAULT_SERVER_URL = "http://bollwerk.online:8080"
val SENSITIVE_KEYS: Set<StringKey> = setOf( val SENSITIVE_KEYS: Set<StringKey> = setOf(
StringKey.AuthAccessToken, StringKey.AuthAccessToken,

View file

@ -5,7 +5,7 @@
Testet Auth, Inventory Sync, Messaging (offline delivery), JWT Refresh Testet Auth, Inventory Sync, Messaging (offline delivery), JWT Refresh
und parallele WebSocket-Sessions gegen einen laufenden Server. und parallele WebSocket-Sessions gegen einen laufenden Server.
.PARAMETER BaseUrl .PARAMETER BaseUrl
Server-URL. Standard: http://195.246.231.210:8080 Server-URL. Standard: http://bollwerk.online:8080
.PARAMETER AlicePassword .PARAMETER AlicePassword
Passwort fuer Alice. Standard: alice Passwort fuer Alice. Standard: alice
.PARAMETER BobPassword .PARAMETER BobPassword
@ -15,7 +15,7 @@
.\run-integration-tests.ps1 -BaseUrl "http://localhost:8080" .\run-integration-tests.ps1 -BaseUrl "http://localhost:8080"
#> #>
param( param(
[string]$BaseUrl = "http://195.246.231.210:8080", [string]$BaseUrl = "http://bollwerk.online:8080",
[string]$AliceUser = "alice", [string]$AliceUser = "alice",
[string]$AlicePassword = "alice", [string]$AlicePassword = "alice",
[string]$BobUser = "bob", [string]$BobUser = "bob",