lists.tssi.com이라는 사이트를 운영 중입니다. 현재는 Mailman에서 마이그레이션된 두 개의 사실상 독립적인 Discourse 커뮤니티를 그룹과 카테고리를 통해 관리하고 있습니다. 이를 x와 y라고 부르겠습니다.
두 그룹을 완전히 독립적으로 분리하고 싶습니다. (네, 제 업무는 더 늘어날 테지만 그건 괜찮습니다.) 이렇게 하려는 주된 이유는 두 커뮤니티 모두 비회원 독자에게도 개방하고 싶기 때문인데, 완전히 독립적이라면 그게 더 쉬울 것 같아서입니다. 두 커뮤니티가 유사한 주제(대학 스포츠 관련 사이트)를 다루고 있지만, X 커뮤니티의 사람들이 Y 커뮤니티에서 무슨 일이 일어나는지에 대해 많이 읽기를 원하지 않을 것 같다고 생각합니다.
이를 수행하는 방법 중 하나는 사이트를 x.tssi.com과 y.tssi.com으로 정의하는 것이고, 다른 방법으로는 x.lists.tssi.com과 y.lists.tssi.com으로 정의하는 것입니다.
어떤 방법을 선택하든 lists.tssi.com은 두 커뮤니티를 연결하는 게이트웨이 역할을 하며, Nginx에서 공통 프론트 도어 역할을 하게 됩니다.
제 판단으로는 두 방법 모두 단일 컨테이너 내에서 데이터베이스를 복제하여 완전히 독립적으로 만드는 것이 가능할 것 같습니다. (테스트 서버는 x.tssi.com과 y.tssi.com 방식으로 설정했기 때문에 그 방식이 작동하는 것은 확실하지만, x.lists.tssi.com과 y.lists.tssi.com 방식에 대해서는 조금 덜 확신이 섭니다. 다만 이 방식이 사용자들에게 더 이해하기 쉬울 것이고, 향후 추가될 수 있는 커뮤니티를 더 쉽게 지원할 수 있을 것 같습니다.)
분리가 완료되면, 한 커뮤니티에 속한 사용자는 다른 커뮤니티의 데이터베이스에서 삭제되거나 비활성화 상태로 설정될 것입니다. 또한 다른 사이트의 게시물과 카테고리를 모두 삭제할 수도 있습니다.
어떤 방식으로 진행하는 것이 좋은지 추천해 주실 수 있나요? 주의해야 할 함정이 있을까요?
게이트웨이 사이트에는 lists.tssi.com을, 개별 커뮤니티에는 x.lists.tssi.com과 y.lists.tssi.com 대신 x.tssi.com과 y.tssi.com을 사용하기로 결정했습니다. 후자는 작동하지 않았는데, 아마도 nginx 설정 문제인 것 같습니다. x.lists.tssi.com이나 y.lists.tssi.com에 대한 요청이 Discourse 서버 대신 lists.tssi.com으로 계속 재라우팅되었기 때문입니다.