kamal을 사용한 배포

Discourse를 Kamal로 배포해 보신 분 계신가요?

스탠드얼론 템플릿을 사용하거나, 모든 의존성 컨테이너를 액세서리로 지정하는 deploy.yml을 작성하는 방식으로 작동할 것 같습니다.

문서에 따르면 스탠드얼론 템플릿은 업그레이드 시 더 긴 다운타임이라는 단점이 있다고 하지만, Kamal의 제로 다운타임 배포 기능(기존 컨테이너를 유지한 채, 새 컨테이너가 HTTP 200으로 응답할 때만 리버스 프록시를 새 컨테이너로 전환) 덕분에 이 문제는 발생하지 않을 것입니다.

하지만 그것은 작동하지 않을 것입니다. 두 개의 컨테이너가 동시에 동일한 postgres 데이터베이스에 액세스할 수 없기 때문입니다. 컨테이너를 시작할 때 데이터베이스 마이그레이션을 수행하는 등 아직 지원되지 않는 새로운 기능들을 시작하거나 사용하려면 자체 컨테이너를 구축해야 합니다. 이를 실현하려면 Discourse와 Kamal 양쪽 모두에 대해 상당한 지식을 갖춘 사람이 필요합니다. 아직 아무도 답변하지 않았으므로, 그런 사람이 여기에는 없는 것 같습니다.

처음에는 표준 설치 방법을 따르고, 그 다음에 Kamal과 함께 작동하는 방법을 찾아보는 것이 좋습니다.