음, 전에 전체 게시글을 하나 올렸다가 지웠습니다. 더 자세히 살펴보니 Docker가 Discourse 설치와 어떻게 상호작용하는지에 대해 심각한 오해가 있었다는 걸 깨달았거든요. 이전 게시글은 제가 뭘 말하고 있는지 제대로 알지 못해서 사람들을 혼란스럽게 했을 테니, 결국 삭제했습니다.
저는 import 파일을 /var/discourse/ 디렉토리에 수동으로 추가하고 있었는데, 사실은 Docker 내부에서 해당 파일을 찾아야 했습니다. 뒤돌아보면 명백한 실수였지만, 당시에는 꽤 혼란스러운 상태였습니다. 설명서에 이 부분이 더 명확하게 적혀 있었다면 좋았을 텐데, 결국 저 스스로 알아서 문제를 해결했습니다.
100만 개 이상의 게시물이 있는 포럼에서 이 임포트 작업을 성공적으로 수행했습니다. 몇 가지 사항을 발견했습니다.
아바타가 없습니다. 스크립트를 살펴보니 아바타에 대한 참조가 보이지 않습니다. 확인 차 여쭤보는데, 아바타가 임포트되지 않는 건가요?
스레드 조회수가 모두 0입니다. 원래 이렇게 되어야 하나요?
게스트 게시물(사용자 계정이 삭제되고 Xenforo에서 사용자명이 guest로 표시된 경우)은 모두 "system"으로 표시됩니다. 이를 system 대신 "guest"로 표시할 수 있는 방법이 있을까요? Discourse는 등록된 계정에 귀속되지 않은 게시물을 지원하나요?
아바타와 스레드 조회수 임포트를 지원하는 임포트 스크립트가 있을까요? 해당 스크립트를 살펴보고 xenforo.rb 스크립트를 수정하는 것이 얼마나 어려운지 확인해 보고 싶습니다.
vBulletin과 Xenforo 데이터베이스에 대해서는 매우 잘 알고 있습니다. 단지 Discourse에서 스레드 조회수와 아바타가 어떻게 저장되는지 방향만 알려주시면 올바르게 매핑할 수 있을 것 같습니다.
보통은 스크립트 디렉터리에서 찾고 있는 것(예: 아바타)을 grep으로 검색합니다. 뷰의 경우, SQL 쿼리에 추가하고 create record에 해당 필드를 넣으면 된다고 생각합니다. 게스트 사용자의 경우, 사용자 조회가 실패하면 system을 사용하는 줄이 있습니다. 이 줄을 사용자가 생성한 게스트 사용자로 교체할 수 있습니다.