Files
HC900-Crawler/start.sh
windpacer 16fc7a2598 Initial commit: HC900 Crawler
Honeywell HC900을 Modbus TCP로 직접 폴링 → gRPC → C# 크롤러 → PostgreSQL.
기존 Experion OPC UA 데이터 경로를 HC900 직접 통신으로 대체.

- industrial-comm/cpp: C++ Modbus 게이트웨이 (gRPC 서버)
- src: C# .NET 8 ASP.NET Core 크롤러 + 웹 UI (3-Layer)
- mcp-server: Python FastMCP (RAG/NL2SQL/P&ID)
- 다중 컨트롤러(N-Controller) 지원

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-03 20:28:14 +09:00

46 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
# HC900Crawler 시작 스크립트
# 사용: ./start.sh [--background]
PROJ=/home/windpacer/projects/hc900_ax
LOG=/tmp/hc900_crawler.log
# Docker 컨테이너 확인
echo "[1/3] Docker 컨테이너 확인..."
for NAME in iiot-timescaledb qdrant-index; do
if docker ps --format '{{.Names}}' | grep -q "^${NAME}$"; then
echo "$NAME 실행 중"
else
echo " ! $NAME 중지됨 → 시작 시도"
docker start "$NAME" 2>/dev/null && echo "$NAME 시작" || echo "$NAME 시작 실패"
fi
done
# 기존 프로세스 정리
echo "[2/3] 기존 프로세스 정리..."
pkill -f "Hc900Crawler" 2>/dev/null && echo " 기존 크롤러 종료" || true
pkill -f "hc900_gateway" 2>/dev/null && echo " 기존 게이트웨이 종료" || true
sleep 2
# 크롤러 시작 (게이트웨이 자동 포함)
echo "[3/3] HC900Crawler 시작..."
cd "$PROJ/src/Hc900Crawler"
if [[ "$1" == "--background" || "$1" == "-b" ]]; then
nohup dotnet run > "$LOG" 2>&1 &
PID=$!
sleep 5
if kill -0 $PID 2>/dev/null; then
echo " ✓ 백그라운드 실행 중 (PID=$PID)"
echo " ✓ 로그: tail -f $LOG"
echo " ✓ 웹 UI: http://localhost:5000"
else
echo " ✗ 시작 실패 — 로그 확인: $LOG"
fi
else
echo " 포그라운드 실행 (Ctrl+C로 종료)"
echo " 로그: $LOG"
echo " 웹 UI: http://localhost:5000"
dotnet run
fi