콘텐츠로 이동

원격 디스플레이 (noVNC)

컨테이너는 가상 디스플레이 스택(Xvfb + x11vnc + noVNC + fluxbox)을 실행하므로, AI 에이전트가 브라우저를 제어하는 것을 관찰하고 필요할 때 개입할 수 있습니다 — 예를 들어, 로그인이나 MFA 프롬프트를 처리할 때 유용합니다.

  1. 브라우저에서 http://localhost:6080/vnc.html을 열고 Connect를 클릭합니다
  2. 경량 fluxbox 데스크톱이 표시됩니다 — 이것이 컨테이너의 가상 디스플레이입니다

헤드 모드에서 @playwright/mcp를 사용하는 AI 에이전트는 이 디스플레이에 Chromium을 렌더링합니다. noVNC 창에서 직접 클릭하거나 타이핑하여 언제든지 개입할 수 있으며 — 일시정지/재개가 필요하지 않습니다.

컨테이너 내부에서 브라우저를 수동으로 열려면:

Terminal window
chromium --no-sandbox &

Playwright 테스트를 헤드 모드로 실행하려면:

Terminal window
npx playwright test --headed
변수기본값설명
ENABLE_VNCtrueVNC 스택을 비활성화하려면 false로 설정
VNC_RESOLUTION1280x1024x24가상 디스플레이 해상도 (너비x높이x색상깊이)
DISPLAY:99X11 디스플레이 번호
NOVNC_HOST_PORT6080noVNC의 호스트 측 포트 (다른 컨테이너와의 충돌을 피하려면 변경)

이러한 변수는 .env 파일 또는 .devcontainer/devcontainer.jsoncontainerEnv 항목에서 설정합니다.

헤드리스 전용 작업의 경우, .env에서 ENABLE_VNC=false를 설정하고 컨테이너를 재시작합니다:

Terminal window
docker compose down
docker compose up -d

검은 화면, 연결 거부 오류, 포트 충돌에 대한 해결 방법은 문제 해결 — 원격 디스플레이를 참조하세요.