Sistema completo para monitoreo y gestion de flotas de vehiculos con: - Backend FastAPI con PostgreSQL/TimescaleDB - Frontend React con TypeScript y TailwindCSS - App movil React Native con Expo - Soporte para dispositivos GPS, Meshtastic y celulares - Video streaming en vivo con MediaMTX - Geocercas, alertas, viajes y reportes - Autenticacion JWT y WebSockets en tiempo real Documentacion completa y guias de usuario incluidas.
59 lines
1.1 KiB
Desktop File
59 lines
1.1 KiB
Desktop File
[Unit]
|
|
Description=Sistema de Flotillas - API Backend
|
|
Documentation=https://github.com/tuorganizacion/flotillas
|
|
After=network.target postgresql.service redis.service
|
|
Wants=postgresql.service redis.service
|
|
|
|
[Service]
|
|
Type=exec
|
|
User=root
|
|
Group=root
|
|
WorkingDirectory=/opt/flotillas/backend
|
|
|
|
# Cargar variables de entorno
|
|
EnvironmentFile=/opt/flotillas/.env
|
|
|
|
# Comando de inicio
|
|
# Uvicorn con multiples workers para produccion
|
|
ExecStart=/opt/flotillas/backend/venv/bin/uvicorn \
|
|
app.main:app \
|
|
--host 0.0.0.0 \
|
|
--port 8000 \
|
|
--workers 4 \
|
|
--loop uvloop \
|
|
--http httptools \
|
|
--proxy-headers \
|
|
--forwarded-allow-ips='*' \
|
|
--access-log \
|
|
--log-level info
|
|
|
|
# Reinicio automatico
|
|
Restart=always
|
|
RestartSec=5
|
|
|
|
# Timeouts
|
|
TimeoutStartSec=30
|
|
TimeoutStopSec=30
|
|
|
|
# Limites de recursos
|
|
LimitNOFILE=65535
|
|
LimitNPROC=4096
|
|
|
|
# Seguridad
|
|
NoNewPrivileges=true
|
|
PrivateTmp=true
|
|
ProtectSystem=strict
|
|
ProtectHome=true
|
|
ReadWritePaths=/opt/flotillas /var/log/flotillas /tmp
|
|
|
|
# Logging
|
|
StandardOutput=journal
|
|
StandardError=journal
|
|
SyslogIdentifier=flotillas-api
|
|
|
|
# Health check (systemd 253+)
|
|
# WatchdogSec=30
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|