From 93871d5add6bb8a6d90303decdefa4b2d565c79c Mon Sep 17 00:00:00 2001 From: Claude-51124 Date: Thu, 18 Sep 2025 23:02:39 +0900 Subject: [PATCH] =?UTF-8?q?docs:=20Xvfb=EB=A5=BC=20=EC=82=AC=EC=9A=A9?= =?UTF-8?q?=ED=95=9C=20=EC=84=9C=EB=B2=84=20=ED=99=98=EA=B2=BD=20=ED=95=B4?= =?UTF-8?q?=EA=B2=B0=EC=B1=85=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 가상 디스플레이(Xvfb)를 사용하여 서버에서 GUI 브라우저 실행 - HEADLESS_BROWSER=false와 함께 사용하여 reCAPTCHA 우회 --- ...e_skill-publish_reCAPTCHA_login_failure.md | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/troubleshooting/250918_claude_skill-publish_reCAPTCHA_login_failure.md b/troubleshooting/250918_claude_skill-publish_reCAPTCHA_login_failure.md index 51bdfa0..feb274e 100644 --- a/troubleshooting/250918_claude_skill-publish_reCAPTCHA_login_failure.md +++ b/troubleshooting/250918_claude_skill-publish_reCAPTCHA_login_failure.md @@ -69,6 +69,26 @@ environment: - 실제 브라우저 UI를 표시하여 reCAPTCHA 우회 - 단점: 서버 환경에서는 사용 불가 +### 1-1. 서버 환경 해결책 - Xvfb (가상 디스플레이) +```dockerfile +# Dockerfile에 추가 +RUN apt-get update && apt-get install -y \ + xvfb \ + && rm -rf /var/lib/apt/lists/* +``` + +```yaml +# docker-compose.yml 수정 +command: xvfb-run python -m uvicorn app.main:app --host 0.0.0.0 --port 8511 +environment: + - HEADLESS_BROWSER=false # 실제 브라우저 사용 +``` + +- **Xvfb(X Virtual Framebuffer)**: 가상 디스플레이 서버 +- 서버 환경에서 GUI 애플리케이션을 메모리상 가상 화면에서 실행 +- 실제 Chrome 브라우저가 가상 디스플레이에서 실행되어 reCAPTCHA 우회 +- 장점: 서버 환경에서도 GUI 브라우저 실행 가능 + ### 2. 중기 해결책 - 수동 Stealth 스크립트 적용 ```python # publisher_service.py에 추가