Fix jwt-token
This commit is contained in:
10
README.md
10
README.md
@@ -130,7 +130,7 @@ cp .env.docker .env
|
||||
# TWILIO_PHONE_NUMBER=your_phone
|
||||
|
||||
# 3. Start the system
|
||||
docker-compose up -d
|
||||
docker compose up -d
|
||||
|
||||
# 4. Access the application
|
||||
# Frontend: http://localhost:3000
|
||||
@@ -142,9 +142,9 @@ docker-start.bat # Windows
|
||||
```
|
||||
|
||||
**Docker Profiles:**
|
||||
- **Default**: `docker-compose up -d` (Frontend + Backend + Database + Redis)
|
||||
- **Production**: `docker-compose --profile production up -d` (+ Nginx proxy)
|
||||
- **Simulation**: `docker-compose --profile simulation up -d` (+ Python simulator)
|
||||
- **Default**: `docker compose up -d` (Frontend + Backend + Database + Redis)
|
||||
- **Production**: `docker compose --profile production up -d` (+ Nginx proxy)
|
||||
- **Simulation**: `docker compose --profile simulation up -d` (+ Python simulator)
|
||||
|
||||
For detailed Docker deployment guide, see [docs/DOCKER_DEPLOYMENT.md](docs/DOCKER_DEPLOYMENT.md).
|
||||
|
||||
@@ -363,7 +363,7 @@ Based on the requirements, here are additional features that would enhance the s
|
||||
### Docker Deployment
|
||||
```bash
|
||||
# Build and run with Docker Compose
|
||||
docker-compose up -d
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
### Manual Deployment
|
||||
|
||||
@@ -10,7 +10,7 @@ services:
|
||||
POSTGRES_DB: drone_detection
|
||||
POSTGRES_USER: postgres
|
||||
POSTGRES_PASSWORD: postgres123
|
||||
PGDATA: /var/lib/postgresql/data/pgdata
|
||||
PGDATA: /var/lib/postgresql/data/pgdatas
|
||||
volumes:
|
||||
- postgres_data:/var/lib/postgresql/data
|
||||
ports:
|
||||
|
||||
@@ -16,7 +16,7 @@ if %errorlevel% neq 0 (
|
||||
)
|
||||
|
||||
REM Check if Docker Compose is installed
|
||||
docker-compose --version >nul 2>&1
|
||||
docker compose --version >nul 2>&1
|
||||
if %errorlevel% neq 0 (
|
||||
echo [ERROR] Docker Compose is not installed. Please install Docker Compose first.
|
||||
pause
|
||||
@@ -79,24 +79,24 @@ exit /b 0
|
||||
:start_services
|
||||
REM Stop any existing containers
|
||||
echo [INFO] Stopping any existing containers...
|
||||
docker-compose down 2>nul
|
||||
docker compose down 2>nul
|
||||
|
||||
REM Build containers if requested
|
||||
if not "%BUILD%"=="" (
|
||||
echo [INFO] Building Docker containers...
|
||||
docker-compose build
|
||||
docker compose build
|
||||
)
|
||||
|
||||
REM Start the appropriate profile
|
||||
if "%PROFILE%"=="production" (
|
||||
echo [INFO] Starting production environment...
|
||||
docker-compose --profile production up %DETACH% %BUILD%
|
||||
docker compose --profile production up %DETACH% %BUILD%
|
||||
) else if "%PROFILE%"=="simulation" (
|
||||
echo [INFO] Starting with simulation environment...
|
||||
docker-compose --profile simulation up %DETACH% %BUILD%
|
||||
docker compose --profile simulation up %DETACH% %BUILD%
|
||||
) else (
|
||||
echo [INFO] Starting development environment...
|
||||
docker-compose up %DETACH% %BUILD%
|
||||
docker compose up %DETACH% %BUILD%
|
||||
)
|
||||
|
||||
REM Wait a moment for services to start
|
||||
@@ -135,15 +135,15 @@ if not "%DETACH%"=="" (
|
||||
echo Operator: operator / operator123
|
||||
echo.
|
||||
echo Useful commands:
|
||||
echo docker-compose logs -f # View logs
|
||||
echo docker-compose ps # Check status
|
||||
echo docker-compose down # Stop services
|
||||
echo docker-compose restart backend # Restart a service
|
||||
echo docker compose logs -f # View logs
|
||||
echo docker compose ps # Check status
|
||||
echo docker compose down # Stop services
|
||||
echo docker compose restart backend # Restart a service
|
||||
echo.
|
||||
|
||||
if "%PROFILE%"=="simulation" (
|
||||
echo 🐍 Simulation is running!
|
||||
echo Monitor with: docker-compose logs -f simulator
|
||||
echo Monitor with: docker compose logs -f simulator
|
||||
echo.
|
||||
)
|
||||
) else (
|
||||
|
||||
@@ -39,7 +39,7 @@ if ! command -v docker &> /dev/null; then
|
||||
fi
|
||||
|
||||
# Check if Docker Compose is installed
|
||||
if ! command -v docker-compose &> /dev/null; then
|
||||
if ! command -v docker compose &> /dev/null; then
|
||||
print_error "Docker Compose is not installed. Please install Docker Compose first."
|
||||
exit 1
|
||||
fi
|
||||
@@ -108,27 +108,27 @@ done
|
||||
|
||||
# Stop any existing containers
|
||||
print_status "Stopping any existing containers..."
|
||||
docker-compose down 2>/dev/null || true
|
||||
docker compose down 2>/dev/null || true
|
||||
|
||||
# Build containers if requested
|
||||
if [ -n "$BUILD" ]; then
|
||||
print_status "Building Docker containers..."
|
||||
docker-compose build
|
||||
docker compose build
|
||||
fi
|
||||
|
||||
# Start the appropriate profile
|
||||
case $PROFILE in
|
||||
"production")
|
||||
print_status "Starting production environment..."
|
||||
docker-compose --profile production up $DETACH $BUILD
|
||||
docker compose --profile production up $DETACH $BUILD
|
||||
;;
|
||||
"simulation")
|
||||
print_status "Starting with simulation environment..."
|
||||
docker-compose --profile simulation up $DETACH $BUILD
|
||||
docker compose --profile simulation up $DETACH $BUILD
|
||||
;;
|
||||
*)
|
||||
print_status "Starting development environment..."
|
||||
docker-compose up $DETACH $BUILD
|
||||
docker compose up $DETACH $BUILD
|
||||
;;
|
||||
esac
|
||||
|
||||
@@ -155,7 +155,7 @@ if [ -n "$DETACH" ]; then
|
||||
fi
|
||||
|
||||
# Check database
|
||||
if docker-compose exec -T postgres pg_isready -U postgres > /dev/null 2>&1; then
|
||||
if docker compose exec -T postgres pg_isready -U postgres > /dev/null 2>&1; then
|
||||
print_success "Database is healthy"
|
||||
else
|
||||
print_warning "Database health check failed"
|
||||
@@ -174,15 +174,15 @@ if [ -n "$DETACH" ]; then
|
||||
echo " Operator: operator / operator123"
|
||||
echo ""
|
||||
echo "Useful commands:"
|
||||
echo " docker-compose logs -f # View logs"
|
||||
echo " docker-compose ps # Check status"
|
||||
echo " docker-compose down # Stop services"
|
||||
echo " docker-compose restart backend # Restart a service"
|
||||
echo " docker compose logs -f # View logs"
|
||||
echo " docker compose ps # Check status"
|
||||
echo " docker compose down # Stop services"
|
||||
echo " docker compose restart backend # Restart a service"
|
||||
echo ""
|
||||
|
||||
if [ "$PROFILE" = "simulation" ]; then
|
||||
echo "🐍 Simulation is running!"
|
||||
echo " Monitor with: docker-compose logs -f simulator"
|
||||
echo " Monitor with: docker compose logs -f simulator"
|
||||
echo ""
|
||||
fi
|
||||
else
|
||||
|
||||
@@ -25,13 +25,13 @@ nano .env
|
||||
|
||||
```bash
|
||||
# Build and start all services
|
||||
docker-compose up -d
|
||||
docker compose up -d
|
||||
|
||||
# View logs
|
||||
docker-compose logs -f
|
||||
docker compose logs -f
|
||||
|
||||
# Check service status
|
||||
docker-compose ps
|
||||
docker compose ps
|
||||
```
|
||||
|
||||
### 3. Access the Application
|
||||
@@ -43,7 +43,7 @@ docker-compose ps
|
||||
|
||||
### Testing Docker Builds
|
||||
|
||||
Before running the full docker-compose setup, you can test individual container builds:
|
||||
Before running the full docker compose setup, you can test individual container builds:
|
||||
|
||||
```bash
|
||||
# Test all builds
|
||||
@@ -76,19 +76,19 @@ docker build -f docker/simulator/Dockerfile -t test-simulator .
|
||||
|
||||
### Development Profile (Default)
|
||||
```bash
|
||||
docker-compose up -d
|
||||
docker compose up -d
|
||||
```
|
||||
Includes: Frontend, Backend, Database, Redis
|
||||
|
||||
### Production Profile
|
||||
```bash
|
||||
docker-compose --profile production up -d
|
||||
docker compose --profile production up -d
|
||||
```
|
||||
Includes: All services + Nginx reverse proxy
|
||||
|
||||
### Simulation Profile
|
||||
```bash
|
||||
docker-compose --profile simulation up -d
|
||||
docker compose --profile simulation up -d
|
||||
```
|
||||
Includes: All services + Python drone simulator
|
||||
|
||||
@@ -174,10 +174,10 @@ VITE_WS_URL=ws://localhost:3001
|
||||
### Backup Strategy
|
||||
```bash
|
||||
# Database backup
|
||||
docker-compose exec postgres pg_dump -U postgres drone_detection > backup.sql
|
||||
docker compose exec postgres pg_dump -U postgres drone_detection > backup.sql
|
||||
|
||||
# Restore database
|
||||
docker-compose exec -T postgres psql -U postgres drone_detection < backup.sql
|
||||
docker compose exec -T postgres psql -U postgres drone_detection < backup.sql
|
||||
|
||||
# Volume backup
|
||||
docker run --rm -v uamils_postgres_data:/data -v $(pwd):/backup alpine tar czf /backup/postgres_backup.tar.gz /data
|
||||
@@ -188,19 +188,19 @@ docker run --rm -v uamils_postgres_data:/data -v $(pwd):/backup alpine tar czf /
|
||||
### View Logs
|
||||
```bash
|
||||
# All services
|
||||
docker-compose logs -f
|
||||
docker compose logs -f
|
||||
|
||||
# Specific service
|
||||
docker-compose logs -f backend
|
||||
docker compose logs -f backend
|
||||
|
||||
# Last 100 lines
|
||||
docker-compose logs --tail=100 backend
|
||||
docker compose logs --tail=100 backend
|
||||
```
|
||||
|
||||
### Health Checks
|
||||
```bash
|
||||
# Check service health
|
||||
docker-compose ps
|
||||
docker compose ps
|
||||
|
||||
# Manual health check
|
||||
curl http://localhost:3001/api/health
|
||||
@@ -213,7 +213,7 @@ curl http://localhost:3000/health
|
||||
docker stats
|
||||
|
||||
# Detailed container info
|
||||
docker-compose exec backend top
|
||||
docker compose exec backend top
|
||||
```
|
||||
|
||||
## Troubleshooting
|
||||
@@ -223,14 +223,14 @@ docker-compose exec backend top
|
||||
#### 1. Database Connection Issues
|
||||
```bash
|
||||
# Check database status
|
||||
docker-compose exec postgres pg_isready -U postgres
|
||||
docker compose exec postgres pg_isready -U postgres
|
||||
|
||||
# View database logs
|
||||
docker-compose logs postgres
|
||||
docker compose logs postgres
|
||||
|
||||
# Reset database
|
||||
docker-compose down -v
|
||||
docker-compose up -d
|
||||
docker compose down -v
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
#### 2. Frontend Build Issues
|
||||
@@ -239,13 +239,13 @@ docker-compose up -d
|
||||
# The Dockerfile has been updated to use npm install instead
|
||||
|
||||
# Rebuild frontend
|
||||
docker-compose build --no-cache frontend
|
||||
docker compose build --no-cache frontend
|
||||
|
||||
# Test frontend build individually
|
||||
docker build -t test-frontend ./client
|
||||
|
||||
# Check build logs
|
||||
docker-compose logs frontend
|
||||
docker compose logs frontend
|
||||
```
|
||||
|
||||
#### 3. Backend API Issues
|
||||
@@ -254,10 +254,10 @@ docker-compose logs frontend
|
||||
curl http://localhost:3001/api/health/detailed
|
||||
|
||||
# View backend logs
|
||||
docker-compose logs backend
|
||||
docker compose logs backend
|
||||
|
||||
# Restart backend
|
||||
docker-compose restart backend
|
||||
docker compose restart backend
|
||||
```
|
||||
|
||||
#### 4. Port Conflicts
|
||||
@@ -267,7 +267,7 @@ netstat -tulpn | grep :3000
|
||||
netstat -tulpn | grep :3001
|
||||
|
||||
# Stop conflicting services
|
||||
docker-compose down
|
||||
docker compose down
|
||||
```
|
||||
|
||||
### Performance Tuning
|
||||
@@ -275,13 +275,13 @@ docker-compose down
|
||||
#### 1. Database Optimization
|
||||
```bash
|
||||
# Increase shared_buffers for PostgreSQL
|
||||
docker-compose exec postgres psql -U postgres -c "ALTER SYSTEM SET shared_buffers = '256MB';"
|
||||
docker-compose restart postgres
|
||||
docker compose exec postgres psql -U postgres -c "ALTER SYSTEM SET shared_buffers = '256MB';"
|
||||
docker compose restart postgres
|
||||
```
|
||||
|
||||
#### 2. Memory Limits
|
||||
```yaml
|
||||
# Add to docker-compose.yml services
|
||||
# Add to docker compose.yml services
|
||||
services:
|
||||
backend:
|
||||
mem_limit: 512m
|
||||
@@ -312,7 +312,7 @@ echo "your-twilio-token" | docker secret create twilio_token -
|
||||
### 3. Nginx Configuration
|
||||
```bash
|
||||
# Enable production profile
|
||||
docker-compose --profile production up -d
|
||||
docker compose --profile production up -d
|
||||
|
||||
# Update nginx config for your domain
|
||||
# Edit docker/nginx/default.conf
|
||||
@@ -321,7 +321,7 @@ docker-compose --profile production up -d
|
||||
### 4. Monitoring Setup
|
||||
```bash
|
||||
# Add monitoring services
|
||||
docker-compose -f docker-compose.yml -f docker-compose.monitoring.yml up -d
|
||||
docker compose -f docker compose.yml -f docker compose.monitoring.yml up -d
|
||||
```
|
||||
|
||||
## Scaling
|
||||
@@ -329,7 +329,7 @@ docker-compose -f docker-compose.yml -f docker-compose.monitoring.yml up -d
|
||||
### Horizontal Scaling
|
||||
```yaml
|
||||
# Scale backend instances
|
||||
docker-compose up -d --scale backend=3
|
||||
docker compose up -d --scale backend=3
|
||||
|
||||
# Load balancer configuration required
|
||||
```
|
||||
@@ -350,11 +350,11 @@ postgres-replica:
|
||||
### Updates
|
||||
```bash
|
||||
# Update images
|
||||
docker-compose pull
|
||||
docker compose pull
|
||||
|
||||
# Rebuild and restart
|
||||
docker-compose down
|
||||
docker-compose up -d --build
|
||||
docker compose down
|
||||
docker compose up -d --build
|
||||
```
|
||||
|
||||
### Cleanup
|
||||
@@ -374,10 +374,10 @@ docker builder prune
|
||||
### Run Simulation
|
||||
```bash
|
||||
# Start simulation profile
|
||||
docker-compose --profile simulation up -d
|
||||
docker compose --profile simulation up -d
|
||||
|
||||
# Run custom simulation
|
||||
docker-compose run --rm simulator python drone_simulator.py \
|
||||
docker compose run --rm simulator python drone_simulator.py \
|
||||
--devices 10 \
|
||||
--duration 3600 \
|
||||
--detection-interval 30
|
||||
@@ -386,7 +386,7 @@ docker-compose run --rm simulator python drone_simulator.py \
|
||||
### Monitor Simulation
|
||||
```bash
|
||||
# View simulator logs
|
||||
docker-compose logs -f simulator
|
||||
docker compose logs -f simulator
|
||||
|
||||
# Check API stats
|
||||
curl http://localhost:3001/api/dashboard/stats
|
||||
|
||||
@@ -26,14 +26,14 @@ ls client/nginx.conf
|
||||
|
||||
### 4. Docker Compose Network Issues
|
||||
**Error**: Services cannot communicate
|
||||
**Solution**: Use the simplified docker-compose file
|
||||
**Solution**: Use the simplified docker compose file
|
||||
```bash
|
||||
docker-compose -f docker-compose.simple.yml up -d
|
||||
docker compose -f docker compose.simple.yml up -d
|
||||
```
|
||||
|
||||
## Build Testing
|
||||
|
||||
Test builds individually before running docker-compose:
|
||||
Test builds individually before running docker compose:
|
||||
|
||||
```bash
|
||||
# Linux/Mac
|
||||
@@ -48,17 +48,17 @@ test-docker-builds.bat
|
||||
|
||||
### Reset Everything
|
||||
```bash
|
||||
docker-compose down -v
|
||||
docker compose down -v
|
||||
docker system prune -f
|
||||
docker-compose build --no-cache
|
||||
docker-compose up -d
|
||||
docker compose build --no-cache
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
### Check Service Logs
|
||||
```bash
|
||||
docker-compose logs backend
|
||||
docker-compose logs frontend
|
||||
docker-compose logs postgres
|
||||
docker compose logs backend
|
||||
docker compose logs frontend
|
||||
docker compose logs postgres
|
||||
```
|
||||
|
||||
### Manual Container Testing
|
||||
@@ -81,8 +81,8 @@ docker run -it --rm -p 3000:80 drone-frontend
|
||||
```bash
|
||||
# Use BuildKit for faster builds
|
||||
export DOCKER_BUILDKIT=1
|
||||
docker-compose build
|
||||
docker compose build
|
||||
|
||||
# Parallel builds
|
||||
docker-compose build --parallel
|
||||
docker compose build --parallel
|
||||
```
|
||||
|
||||
18
package.json
18
package.json
@@ -18,15 +18,15 @@
|
||||
"build": "npm run client:build",
|
||||
"start": "npm run server:start",
|
||||
"setup": "npm run install:all && npm run db:setup",
|
||||
"docker:build": "docker-compose build",
|
||||
"docker:up": "docker-compose up -d",
|
||||
"docker:down": "docker-compose down",
|
||||
"docker:logs": "docker-compose logs -f",
|
||||
"docker:restart": "docker-compose restart",
|
||||
"docker:clean": "docker-compose down -v && docker system prune -f",
|
||||
"docker:prod": "docker-compose --profile production up -d",
|
||||
"docker:simulate": "docker-compose --profile simulation up -d",
|
||||
"docker:backup": "docker-compose exec postgres pg_dump -U postgres drone_detection > backup-$(date +%Y%m%d-%H%M%S).sql"
|
||||
"docker:build": "docker compose build",
|
||||
"docker:up": "docker compose up -d",
|
||||
"docker:down": "docker compose down",
|
||||
"docker:logs": "docker compose logs -f",
|
||||
"docker:restart": "docker compose restart",
|
||||
"docker:clean": "docker compose down -v && docker system prune -f",
|
||||
"docker:prod": "docker compose --profile production up -d",
|
||||
"docker:simulate": "docker compose --profile simulation up -d",
|
||||
"docker:backup": "docker compose exec postgres pg_dump -U postgres drone_detection > backup-$(date +%Y%m%d-%H%M%S).sql"
|
||||
},
|
||||
"keywords": ["drone", "detection", "monitoring", "iot", "security"],
|
||||
"author": "Your Name",
|
||||
|
||||
@@ -31,8 +31,8 @@ echo [SUCCESS] Simulator build completed
|
||||
echo [SUCCESS] All builds completed successfully!
|
||||
echo.
|
||||
echo You can now run:
|
||||
echo docker-compose up -d
|
||||
echo docker compose up -d
|
||||
echo or
|
||||
echo docker-compose -f docker-compose.simple.yml up -d
|
||||
echo docker compose -f docker compose.simple.yml up -d
|
||||
|
||||
pause
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Docker Build Test Script
|
||||
# Tests building individual containers before running docker-compose
|
||||
# Tests building individual containers before running docker compose
|
||||
|
||||
set -e
|
||||
|
||||
@@ -56,6 +56,6 @@ fi
|
||||
print_success "All builds completed successfully!"
|
||||
echo ""
|
||||
echo "You can now run:"
|
||||
echo " docker-compose up -d"
|
||||
echo " docker compose up -d"
|
||||
echo " or"
|
||||
echo " docker-compose -f docker-compose.simple.yml up -d"
|
||||
echo " docker compose -f docker compose.simple.yml up -d"
|
||||
|
||||
Reference in New Issue
Block a user