배포 방식 선택
릴레이는 경량 Node.js 서버입니다. WebSocket 트래픽 라우팅과 대시보드 서빙만 담당하므로 무거운 컴퓨팅 자원이 필요하지 않습니다.
릴레이 URL 두 가지 역할
- 대시보드 접속 — 브라우저에서
http://localhost:4000(로컬) 또는http://192.168.x.x:4000(팀 내 접속) - 에이전트 연결 — 릴레이가 다른 Mac에 있을 때:
tapflow agent start --relay ws://192.168.x.x:4000. 에이전트→릴레이 구간은 LAN 내부로 연결합니다. 스킴은ws://이고 릴레이에tls를 설정해 HTTPS로 운영하면wss://입니다. 원격 에이전트는agent스코프 토큰으로 인증합니다(원격 릴레이 인증).
배포 시나리오
에이전트와 릴레이는 같은 유선 LAN에 두세요
에이전트는 릴레이로 영상 프레임을 지속적으로 전송하므로 둘은 같은 LAN에 있어야 합니다. 같은 사무실 건물이라면 층이 다르거나 VLAN이 분리돼 있어도 내부 라우팅으로 지연이 충분히 낮습니다. 다만 에이전트를 인터넷 너머 다른 네트워크에 두면 RTT가 높아져 프레임이 드롭됩니다. 유선 이더넷을 권장합니다. Wi-Fi도 동작하지만 Mac에서는 AWDL 때문에 끊길 수 있습니다. 끊김이 보이면 스트림 지연·끊김을 참고하세요.
로컬 운영 (Mac 한 대)
릴레이와 에이전트를 같은 Mac에서 한 번에 실행합니다.
tapflow start팀 운영 (릴레이 서버 분리)
릴레이는 전용 Mac에서, 에이전트는 시뮬레이터가 연결된 각 Mac에서 실행합니다.
릴레이 Mac에서:
tapflow relay start각 에이전트 Mac에서:
tapflow agent start --relay ws://192.168.x.x:4000 --token tflw_pat_xxxxxxxx릴레이가 에이전트와 다른 머신에 있으므로 agent 스코프 토큰이 필요합니다. 발급 방법은 원격 릴레이 인증을 참고하세요.
내부 접속 (같은 네트워크)
같은 사무실 건물 내 팀원이 대시보드에 접근하는 가장 간단한 방법입니다.
npm install -g tapflow
tapflow start단일 릴레이는 JWT_SECRET을 자동 생성하므로 여기서 따로 설정할 값이 없습니다. 고정 키가 필요하면 JWT_SECRET을 참고하세요.
팀원은 http://MAC_LOCAL_IP:4000으로 대시보드에 접속합니다. 포트는 tapflow.config.json의 local.port 값을 따릅니다 (기본값 4000).
옮겨진 섹션
이 페이지에 있던 섹션은 아래 페이지로 옮겨졌습니다.