30 lines
636 B
Bash
30 lines
636 B
Bash
#!/bin/bash
|
|
|
|
APP_DIR="/volume1/web/ChemiFactoy_MQTT_DB_Logger"
|
|
PYTHON="/volume1/web/venv/bin/python3"
|
|
PID_FILE="$APP_DIR/server.pid"
|
|
|
|
if [ -f "$PID_FILE" ]; then
|
|
OLD_PID=$(cat "$PID_FILE")
|
|
if kill -0 "$OLD_PID" 2>/dev/null; then
|
|
kill "$OLD_PID"
|
|
sleep 5
|
|
fi
|
|
fi
|
|
|
|
# 로그를 server.log 파일에 기록하여 장애 발생 시 확인 가능하도록 함
|
|
nohup "$PYTHON" "$APP_DIR/main.py" \
|
|
> "$APP_DIR/server.log" 2>&1 &
|
|
|
|
NEW_PID=$!
|
|
echo "$NEW_PID" > "$PID_FILE"
|
|
|
|
sleep 2
|
|
|
|
if kill -0 "$NEW_PID" 2>/dev/null; then
|
|
echo "Server started. PID=$NEW_PID"
|
|
else
|
|
echo "Server startup failed."
|
|
exit 1
|
|
fi
|