Compare commits

...

2 Commits

Author SHA1 Message Date
7935771468 ♻️ refactor(script): improve public base URL configuration logic
- .env 파일의 PUBLIC_BASE_URL을 우선 사용하도록 변경
- shell 환경 변수, .env 파일, LAN IP 순으로 PUBLIC_BASE_URL 설정
- LAN IP 감지 실패 시 경고 메시지 수정
- 코드 가독성 향상 및 에러 처리 개선
2026-04-27 13:02:06 +00:00
e61e4d833c 문구 부드럽게 수정 2026-04-27 12:56:28 +00:00
2 changed files with 22 additions and 14 deletions

13
app.py
View File

@@ -519,16 +519,11 @@ def render_voter():
- 본인 이름 선택 + **본인 사번 입력**
- 본인 팀 자동 매핑
- 본인 팀 **제외**, 다른 6팀 중 각 분야별 1팀씩 투표 (총 3표)
- **한 번만 제출 가능** (이름 unique)
- 사번은 사칭 의심 시 추적용으로 기록됨
- **한 번만 제출 가능**
- 사번은 실수 시 잘못된 표 확인을 위해서만 기록됨
**수상 결정 — 1팀 1상 한정**
- 우선순위: 🛠 **실용성상 (팜레스트)** > 🏆 **완성도상 (양우산)** > 🎉 **재미상 (손선풍기)**
- 상위상 수상 팀은 후순위 상에서 자동 제외
- 한 팀이 모든 분야 1위여도 **가장 비싼 상 1개**만 받음
**시상 발표 순서**
- 🎉 재미상 → 🏆 완성도상 → 🛠 실용성상 (긴장감 build-up)
- 우선순위: 🛠 **실용성상** > 🏆 **완성도상** > 🎉 **재미상**
"""
)
@@ -553,7 +548,7 @@ def render_voter():
employee_id = st.text_input(
"사번",
placeholder="본인 사번만 (전화번호/주민번호 입력 금지)",
help="칭 추적용으로 기록됨. 본인 사번 외 입력하지 마세요.",
help="번은 실수 시 잘못된 표 확인을 위해서만 기록됨. 본인 사번 외 입력하지 마세요.",
)
if not name:

View File

@@ -3,14 +3,27 @@
set -euo pipefail
cd "$(dirname "$0")"
LAN_IP=$(ipconfig getifaddr en0 2>/dev/null || ip -4 addr show 2>/dev/null | grep -oP '(?<=inet\s)\d+(\.\d+){3}' | grep -v '^127\.' | head -1 || echo "")
PORT=${PORT:-8501}
if [[ -n "$LAN_IP" ]]; then
export PUBLIC_BASE_URL="http://${LAN_IP}:${PORT}"
echo "[start] PUBLIC_BASE_URL=${PUBLIC_BASE_URL} (자동 감지)"
# .env 의 PUBLIC_BASE_URL 우선. 비어 있으면 LAN IP 자동 감지.
ENV_URL=""
if [[ -f .env ]]; then
ENV_URL=$(grep -E '^\s*PUBLIC_BASE_URL\s*=' .env | tail -1 | sed -E 's/^\s*PUBLIC_BASE_URL\s*=\s*//; s/^["'\'']//; s/["'\'']$//' || true)
fi
if [[ -n "${PUBLIC_BASE_URL:-}" ]]; then
echo "[start] PUBLIC_BASE_URL=${PUBLIC_BASE_URL} (shell env)"
elif [[ -n "$ENV_URL" ]]; then
export PUBLIC_BASE_URL="$ENV_URL"
echo "[start] PUBLIC_BASE_URL=${PUBLIC_BASE_URL} (.env)"
else
echo "[start] LAN IP 감지 실패. 어드민에서 PUBLIC_BASE_URL 직접 설정 필요."
LAN_IP=$(ipconfig getifaddr en0 2>/dev/null || ip -4 addr show 2>/dev/null | grep -oP '(?<=inet\s)\d+(\.\d+){3}' | grep -v '^127\.' | head -1 || echo "")
if [[ -n "$LAN_IP" ]]; then
export PUBLIC_BASE_URL="http://${LAN_IP}:${PORT}"
echo "[start] PUBLIC_BASE_URL=${PUBLIC_BASE_URL} (LAN 자동 감지)"
else
echo "[start] PUBLIC_BASE_URL 미설정. 어드민에서 직접 설정 필요."
fi
fi
exec docker compose up -d --build "$@"