Voice: Discord 스타일 음성 및 비디오 방, 이제 Discourse에 번들링됨 🎙

전문가는 아니지만, Discourse에서 최신 조사 결과와 발견한 사항을 공유할 준비가 되어 있습니다. 주로 시행착오를 통해 얻은 경험입니다. :sweat_smile:

작업을 마치고 시간이 될 때 이 정보를 기꺼이 공유하겠습니다. 셀프 호스팅의 핵심은 각 서버가 개인별로 관리되므로 보안 구성이 서버마다 다르다는 점입니다.

제 경우를 들어보면, Nginx를 리버스 프록시로 사용하지만 다른 사용자들은 Nginx Proxy, Caddy, Traefik 등을 사용합니다. 또한 일부는 Docker의 공유 네트워크를 선호하는 반면, 다른 사용자들은 네이티브 브리지를 사용하여 모든 애플리케이션이 서로 확인할 수 있게 설정합니다.

Livekit 호스팅 시 가장 중요한 것은 시크릿을 설정하고, 올바른 권한을 부여하며, Docker가 사용하는 템플릿을 강화하여 모든 것을 최대한 제한하는 것입니다. 공개 네트워크이고 프로젝트 자체가 초기 개발 단계이므로, 후회할 바에야 미리 조심하는 것이 낫습니다.

클라우드 서비스를 제공하는 것 같지만, 셀프 호스팅은 단순한 웹사이트(!)를 넘어선 것입니다.

LiveKit은 여러 레이어로 구성되어 있습니다: API 서비스, 노드 탐색을 위한 라우팅, 방과 참가자를 관리하는 중앙 RTC, RTP 포워딩과 적응형 스트리밍을 처리하는 멀티미디어 처리(SFU), 캐싱을 위한 저장소(Redis 등), 그리고 텔레메트리와 구성을 포함하는 인프라 레이어입니다.

제가 틀린 부분이 있다면 Discourse 팀이나 더 경험이 많은 사용자가 수정해 주시길 바랍니다. 하지만 제 이해로는 이 경우 연결에 필요한 서브도메인을 갖기 위해 (또는 유사한 도구를) 사용하는 것이 필요하다고 생각합니다.

어쨌든 내부적으로 처리하는 것도 가능하지만, 특정 작업에는 인증서가 필요하며 로컬에서 생성된 인증서는 항상 작동하지 않습니다.