기존 Discourse 환경을 이전과 동일한 방식으로 업데이트했습니다. discourse_docker 저장소의 최신 리비전을 가져온 후 다음 명령을 실행했습니다:
./launcher rebuild app
오류 없이 실행이 완료되고 새 컨테이너도 시작됩니다. 겉보기에는 모든 것이 정상으로 보입니다.
하지만 실행 중인 애플리케이션의 HTML 소스를 확인해 보니, 업데이트 전 버전인 v3.5.2로 표시되고 있으며, 기대했던 v2025.11.0이 아닙니다.
우리의 절차는 이전 업데이트들과 동일합니다. 명백하게 변경된 유일한 사항은 v2025.11.0에서 도입된 버전 번호 체계입니다. 이 변경 사항과 관련이 있을까요?
Discourse 소스 코드에서 버전 문자열이 업데이트되지 않았는지 확인해 보았지만, 그렇지 않습니다. 다음 두 커밋을 참고하세요:
- v3.5.2용: Bump version to v3.5.2 · discourse/discourse@cc8d3f6 · GitHub
- v2025.11.0용: DEV: Bump version on `release/2025.11` to `v2025.11.0` (#36251) · discourse/discourse@75d61b4 · GitHub
launcher의 rebuild 명령 출력에서 git pull이 수행되고 새 브랜치가 감지되는 것을 확인했습니다:
(...)
t [tag update] beta -> beta
t [tag update] latest-release -> latest-release
* [new tag] release -> release
* [new tag] v2025.11.0 -> v2025.11.0
* [new tag] v2025.12.0-latest -> v2025.12.0-latest
* [new tag] v3.5.2 -> v3.5.2
* [new tag] v3.6.0.beta2 -> v3.6.0.beta2
Switched to a new branch 'stable'
I, [2025-12-03T12:27:14.785550 #1] INFO -- : branch 'stable' set up to track 'origin/stable'.
어떤 이유로든 여전히 최신이 아닌(즉, 가장 새로운 것이 아닌) 브랜치를 선택하는 것처럼 느껴집니다. ‘stable’ 브랜치에는 v3.5.2가 포함된 것 같습니다(해당 브랜치의 lib/version.rb에 따르면).
2025.11.0 릴리스 공지를 다시 읽어보니, 실제로 이는 미리보기/얼리 어답터용 릴리스가 아니라 안정적(stable) 릴리스로 보입니다. 링크된 새로운 버전 관리 전략에서는 latest 브랜치를 언급하지만, 이제는 무엇을 기대해야 할지 더 혼란스럽습니다.
무언가를 놓치고 있는 걸까요? 아니면 rebuild 시 선택되는 버전을 우리가 제어할 수 있을까요? 아니면 현재 의도대로 작동하지 않아 rebuild 도구가 수정이 필요한 상황일까요?
관련이 있는지 확실하지는 않지만, Docker Hub에서 ‘latest’ 태그는 3.5.2입니다. 숫자 순서로 내림차순 정렬하면, 이는 아주 오랫동안 가장 최신 태그가 될 수 있습니다…