Files
pyBTMCP/entrypoint.sh

24 lines
530 B
Bash
Raw Normal View History

#!/bin/bash
set -e
# Start Mosquitto MQTT broker in background
/usr/sbin/mosquitto -c /app/config/mosquitto.conf &
MOSQUITTO_PID=$!
# Wait for Mosquitto to be ready
sleep 1
# Start FastAPI/Web UI in background
python -m uvicorn src.api.main:app --host 0.0.0.0 --port 8000 &
UVICORN_PID=$!
# Trap to cleanup background processes on exit
cleanup() {
kill $UVICORN_PID 2>/dev/null || true
kill $MOSQUITTO_PID 2>/dev/null || true
}
trap cleanup EXIT
# Run MCP server as main process (stdio)
exec python -m src.mcp.server