Fix auth redirects and add rebuild startup scripts
This commit is contained in:
@@ -4,14 +4,15 @@ services:
|
|||||||
context: .
|
context: .
|
||||||
dockerfile: Dockerfile
|
dockerfile: Dockerfile
|
||||||
ports:
|
ports:
|
||||||
- "5000:5000"
|
- "5050:5000"
|
||||||
environment:
|
environment:
|
||||||
- SECRET_KEY=dev-change-me
|
- SECRET_KEY=dev-change-me
|
||||||
- DB_CONFIG_PATH=/config/db_config.json
|
- DB_CONFIG_PATH=/config/db_config.json
|
||||||
volumes:
|
volumes:
|
||||||
- ./backend:/app/backend
|
- config-data:/config
|
||||||
- ./frontend:/app/frontend
|
- logs-data:/app/backend/logs
|
||||||
- ./backend/config:/config
|
|
||||||
- ./logs:/app/backend/logs
|
|
||||||
working_dir: /app/backend
|
working_dir: /app/backend
|
||||||
command: python app.py
|
command: python app.py
|
||||||
|
volumes:
|
||||||
|
config-data:
|
||||||
|
logs-data:
|
||||||
|
|||||||
@@ -9,10 +9,12 @@ function LoginForm() {
|
|||||||
|
|
||||||
const login = async () => {
|
const login = async () => {
|
||||||
try {
|
try {
|
||||||
const res = await axios.post('/login', { username, password });
|
const res = await axios.post('/api/login', { username, password });
|
||||||
localStorage.setItem('token', res.data.token);
|
localStorage.setItem('token', res.data.token);
|
||||||
localStorage.setItem('role', res.data.role);
|
localStorage.setItem('role', res.data.role);
|
||||||
navigate('/');
|
navigate('/', { replace: true });
|
||||||
|
// ensure nav + route state reflect the new token immediately
|
||||||
|
window.location.href = '/';
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
alert('Login fehlgeschlagen');
|
alert('Login fehlgeschlagen');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ function LogoutButton() {
|
|||||||
|
|
||||||
const logout = async () => {
|
const logout = async () => {
|
||||||
try {
|
try {
|
||||||
await axios.post('/logout'); // sendet POST an /api/logout
|
await axios.post('/api/logout');
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.warn('Logout-Request fehlgeschlagen, ignoriere...');
|
console.warn('Logout-Request fehlgeschlagen, ignoriere...');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ function Md5Tool() {
|
|||||||
|
|
||||||
const hashPassword = async () => {
|
const hashPassword = async () => {
|
||||||
try {
|
try {
|
||||||
const res = await axios.post('/hash/md5', { password: input });
|
const res = await axios.post('/api/hash/md5', { password: input });
|
||||||
|
|
||||||
setResult(res.data.md5);
|
setResult(res.data.md5);
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
|||||||
+15
@@ -0,0 +1,15 @@
|
|||||||
|
@echo off
|
||||||
|
setlocal
|
||||||
|
cd /d %~dp0
|
||||||
|
|
||||||
|
echo === Fresh rebuild + start ===
|
||||||
|
Docker compose -f docker-compose.dev.yml down --rmi local --remove-orphans
|
||||||
|
Docker compose -f docker-compose.dev.yml up --build --force-recreate -d || goto :err
|
||||||
|
|
||||||
|
Docker compose -f docker-compose.dev.yml ps
|
||||||
|
echo Open http://localhost:5050/
|
||||||
|
goto :eof
|
||||||
|
|
||||||
|
:err
|
||||||
|
echo Startup failed. See errors above.
|
||||||
|
exit /b 1
|
||||||
+16
@@ -0,0 +1,16 @@
|
|||||||
|
# startup.ps1 - rebuilds and starts the stack fresh each time
|
||||||
|
Set-StrictMode -Version Latest
|
||||||
|
$ErrorActionPreference = "Stop"
|
||||||
|
|
||||||
|
# always operate from repo root
|
||||||
|
Set-Location $PSScriptRoot
|
||||||
|
|
||||||
|
Write-Host "Stopping and removing previous containers/images..." -ForegroundColor Cyan
|
||||||
|
docker compose -f docker-compose.dev.yml down --rmi local --remove-orphans
|
||||||
|
|
||||||
|
Write-Host "Building + starting stack..." -ForegroundColor Cyan
|
||||||
|
docker compose -f docker-compose.dev.yml up --build --force-recreate -d
|
||||||
|
|
||||||
|
Write-Host "Services status:" -ForegroundColor Cyan
|
||||||
|
docker compose -f docker-compose.dev.yml ps
|
||||||
|
Write-Host "Open http://localhost:5050/" -ForegroundColor Green
|
||||||
Reference in New Issue
Block a user