Deploy: exdev sync 2026-08-11 17:56:35
This commit is contained in:
@@ -11,6 +11,13 @@
|
||||
# ./server-dev/start-all-server.sh --skip-oracle # TROAD Oracle 기동 생략
|
||||
# ./server-dev/start-all-server.sh --local # 로컬 Mac 개발 모드 (local-dev 위임)
|
||||
#
|
||||
# ★ 개발서버(exdev) 주소/설정은 이 스크립트가 런타임 ENV 로만 적용한다.
|
||||
# - WAS Mongo → 127.0.0.1 (SPRING_DATA_MONGODB_URI)
|
||||
# - Skill → 로컬 WAS/RAG (CHATBOT_API_BASE_URL, RAG_AGENT_CHAT_URL)
|
||||
# - RAG .env → host.docker.internal + EXDEV_LOCAL=true
|
||||
# application.yml 등 커밋 파일은 운영 기본값(172.16.180.130)을 유지한다.
|
||||
# 공식 GitHub 반영은 ./git_fetch_all.sh 전용 (exdev 주소를 push 하지 않음).
|
||||
#
|
||||
# 로컬 Mac 실행 시: Gitea(exdev) 최신 merge → 현재 소스 commit/push → 원격 배포.
|
||||
# 공식 GitHub(KoreaExpressWayCorp) push 는 하지 않음 — ./git_fetch_all.sh 전용.
|
||||
set -euo pipefail
|
||||
@@ -41,6 +48,8 @@ MONGO_CONTAINER="${MONGO_CONTAINER:-exaichatbot-agent-mongo}"
|
||||
ORACLE_CONTAINER="${ORACLE_CONTAINER:-exaichatbot-agent-oracle-troad}"
|
||||
INTERNAL_TOOL_API_KEY="${INTERNAL_TOOL_API_KEY:-exdev-agent-tool-key}"
|
||||
PUBLIC_BASE_URL="${PUBLIC_BASE_URL:-https://chatbot.exdev.co.kr}"
|
||||
# exdev 전용 — 소스(application.yml)를 수정하지 않고 ENV 로만 주입
|
||||
EXDEV_MONGO_URI="${EXDEV_MONGO_URI:-mongodb://127.0.0.1:27017/chatbot?heartbeatFrequencyMS=30000&minPoolSize=8&maxIdleTimeMS=18000000}"
|
||||
|
||||
LLM_PORT="${LLM_PORT:-16000}"
|
||||
EMBED_PORT="${EMBED_PORT:-16001}"
|
||||
@@ -551,19 +560,30 @@ start_java_service() {
|
||||
kakaoChatbotSkill) port="${SKILL_PORT}" ;;
|
||||
esac
|
||||
|
||||
# exdev ENV(로컬 Mongo/WAS/RAG) 재적용을 위해 기존 프로세스는 항상 재기동한다.
|
||||
if [[ -f "${pid_file}" ]]; then
|
||||
local old_pid
|
||||
old_pid="$(cat "${pid_file}")"
|
||||
if kill -0 "$old_pid" 2>/dev/null; then
|
||||
if [[ -n "${port}" ]] && lsof -iTCP:"${port}" -sTCP:LISTEN >/dev/null 2>&1; then
|
||||
log "${name} 이미 실행 중 (PID ${old_pid}, :${port})"
|
||||
return 0
|
||||
fi
|
||||
# pid 는 있으나 포트 미개방 → 좀비/실패 프로세스 정리
|
||||
log "${name} 재기동 (기존 PID ${old_pid})"
|
||||
kill "$old_pid" 2>/dev/null || true
|
||||
sleep 2
|
||||
kill -9 "$old_pid" 2>/dev/null || true
|
||||
fi
|
||||
rm -f "${pid_file}"
|
||||
fi
|
||||
if [[ -n "${port}" ]]; then
|
||||
local pids
|
||||
pids="$(lsof -tiTCP:"${port}" -sTCP:LISTEN 2>/dev/null || true)"
|
||||
if [[ -n "${pids}" ]]; then
|
||||
log "${name} :${port} 점유 프로세스 종료"
|
||||
# shellcheck disable=SC2086
|
||||
kill ${pids} 2>/dev/null || true
|
||||
sleep 1
|
||||
# shellcheck disable=SC2086
|
||||
kill -9 ${pids} 2>/dev/null || true
|
||||
fi
|
||||
fi
|
||||
|
||||
[[ -n "${JAVA_HOME}" ]] || ensure_java
|
||||
chmod +x "${dir}/gradlew"
|
||||
@@ -703,6 +723,7 @@ start_rag
|
||||
if ! $SKIP_JAVA; then
|
||||
ensure_java
|
||||
# Skill 먼저 (WAS WEB tool 이 Skill data-portal 을 역호출)
|
||||
log "exdev Java ENV: Skill→127.0.0.1 WAS/RAG, WAS Mongo→127.0.0.1 (소스 yml 미변경)"
|
||||
start_java_service "kakaoChatbotSkill" "${SKILL_DIR}" \
|
||||
"${RUN_DIR}/kakao-skill.pid" "${LOG_DIR}/kakao-skill.log" \
|
||||
"EXDEV_LOCAL=true" \
|
||||
@@ -719,6 +740,7 @@ if ! $SKIP_JAVA; then
|
||||
"SKILL_INTERNAL_BASE_URL=http://127.0.0.1:${SKILL_PORT}" \
|
||||
"RAG_SERVER_HOST=127.0.0.1" \
|
||||
"RAG_SERVER_PORT=${RAG_PORT}" \
|
||||
"SPRING_DATA_MONGODB_URI=${EXDEV_MONGO_URI}" \
|
||||
|| warn "chatbotApi 기동 실패"
|
||||
fi
|
||||
|
||||
|
||||
Reference in New Issue
Block a user