d73222c6c65dff9d1c8b94fa9c3d94592f280f97
핵심: - PVE VNC WebSocket 직접 프록시 (websockify 불필요) - VNC Auth 핸드셰이크를 gateway가 대리 처리 (DES 암호화) - noVNC에는 SecurityType=None으로 전달하여 비밀번호 없이 연결 - Playwright로 headless 디버깅하여 원인 발견 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
PharmQ 인프라 트러블슈팅 & 설치 가이드
약국 인프라 설치/운영 중 발생하는 고급 트러블슈팅 기록 및 설치 스크립트 문서.
설치 스크립트
개별 실행 (단계별)
# 1단계: PVE 구독 제한 해제
curl -fsSL https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/fix-pve9-repos.sh | bash
# 2단계: Headscale VPN 등록 + 약국 생성
curl -fsSL https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/headscale-auto-register.sh | bash
# 3단계: PBS 등록 + VM 복원
curl -fsSL https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/pbs_allinone.sh | bash
통합 실행 (원클릭)
# 전체 통합: Repo Fix → VPN → PBS → CT 생성 → 약국/장비/계정 등록
curl -fsSL https://git.0bin.in/thug0bin/pve9-repo-fix/raw/branch/main/pharmq-setup.sh | bash
통합 스크립트 8단계:
- PVE Repository Fix (구독 제한 해제)
- PVE Host Tailscale → Headscale 등록
- 약국 정보 수집 (대화형)
- PBS 등록 + Windows VM(팜IT3000) 복원
- Ubuntu CT 자동 생성
- CT 내부 환경 구축 (ODBC, Tailscale, API)
- farmq.db 약국 + 장비 2개 + gateway 계정 등록
- 검증 + 로그인 정보 출력
트러블슈팅 문서
| 문서 | 주제 | 날짜 |
|---|---|---|
| caddy-headscale-proxy.md | Caddy + Headscale 리버스 프록시 — HTTP 리다이렉트 + HTTP/2 Upgrade 충돌 | 2026-04-06 |
| nat-hairpinning.md | 같은 LAN에서 공인 IP 접근 시 NAT Hairpinning 문제 | 2026-04-06 |
| odbc-freetds-conflict.md | MSSQL named instance — FreeTDS vs ODBC Driver 18 충돌 | 2026-04-06 |
Description
Languages
Markdown
100%