run.sh: avoid global LD_LIBRARY_PATH; pass conda lib only to uvicorn
Prevents bash/libtinfo 'no version information available' when conda ncurses shadows system libtinfo. Document env -u LD_LIBRARY_PATH fallback. Made-with: Cursor
This commit is contained in:
12
run.sh
12
run.sh
@@ -1,4 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
# libtinfo 경고: 터미널에 이미 conda가 켜져 LD_LIBRARY_PATH가 잡혀 있으면
|
||||
# env -u LD_LIBRARY_PATH ./run.sh
|
||||
# 로 실행해 보세요.
|
||||
set -euo pipefail
|
||||
|
||||
if [[ -z "${BASH_VERSION:-}" ]]; then
|
||||
@@ -11,9 +14,9 @@ cd /home/dsyoon/workspace/stt
|
||||
CONDA_BASE="/home/dsyoon/workspace/miniconda3"
|
||||
source "${CONDA_BASE}/bin/activate" ncue
|
||||
|
||||
# Torch/ctranslate2 런타임 로딩에 conda lib 경로 필요할 수 있음
|
||||
export LD_LIBRARY_PATH="${CONDA_PREFIX}/lib:${LD_LIBRARY_PATH:-}"
|
||||
|
||||
# 전역 LD_LIBRARY_PATH에 conda lib를 넣으면, 같은 터미널의 bash가 conda의
|
||||
# libtinfo.so 를 물며 «no version information available» 경고가 날 수 있음.
|
||||
# torch/ctranslate2 등은 uvicorn 자식 프로세스에만 경로를 넘긴다.
|
||||
PORT="${PORT:-8025}"
|
||||
RELOAD="${RELOAD:-0}"
|
||||
|
||||
@@ -29,5 +32,6 @@ if [[ "${RELOAD}" == "1" ]]; then
|
||||
fi
|
||||
|
||||
echo "Starting uvicorn on 127.0.0.1:${PORT} (reload=${RELOAD})"
|
||||
nohup uvicorn app.main:app "${UVICORN_ARGS[@]}" > server.log 2>&1 &
|
||||
nohup env LD_LIBRARY_PATH="${CONDA_PREFIX}/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" \
|
||||
uvicorn app.main:app "${UVICORN_ARGS[@]}" > server.log 2>&1 &
|
||||
echo "Server started (PID: $!). Logs: server.log"
|
||||
|
||||
Reference in New Issue
Block a user