컨테이너 업그레이드 - 설정 및 데이터 유지

커뮤니티 여러분께 인사드립니다.

이렇게 기본적인 정보를 찾지 못한 것이 정말 죄송한 마음입니다. 사실 처음부터 세팅하는 문제가 아니라, 제 질문에 가장 가까운 카테고리라고 생각해서 여기에 올립니다.

질문: Docker를 사용하여 기존 설치 환경을 업그레이드하는 방법은 무엇인가요?
배경: 앱 내의 ‘업데이트’ 기능을 사용했는데, 이로 인해 제 Discourse 인스턴스가 죽었습니다. (필요하다면 자세히 설명할 수 있습니다.)
클라우드 가상 호스트(Hetzner)에서 1~2년 된 Debian을 사용 중입니다.

따라서 저는 최신 Docker 이미지를 다운로드하고 컨테이너를 빌드하되, 설정(물론 데이터도)을 잃지 않는 방법을 찾고 있습니다. Docker에 대해 매우 숙련되지 않아서 혼자서 시도하기에는 자신이 없습니다.

(불변 또는 상태 없는) 컨테이너를 사용하는 원칙의 일부이므로 꽤 간단할 것 같습니다.

도움 주셔서 감사합니다.

토마스

감사합니다!

최초 설치와 비교했을 때 절차가 동일한가요? 이 단계들에 대한 사용 설명서나 튜토리얼을 아시는 분 계신가요?

참고로: 관리자 패널에서 소프트웨어 업데이트를 실행했는데, 완료되지 않고 설치 자체가 손상되었습니다. 롤백도 작동하지 않았습니다.

감사합니다
토마스

위에서 링크된 토픽 상단의 검은색 박스에 세 가지 명령어를 입력하셨나요? 사이트 업그레이드 외에 다른 일이 발생했나요?

표준 설치를 하셨다면, 그것이 바로 질문에 대한 답입니다. #howto가 그 답을 제공하고 있습니다. 해당 지침은 Discourse를 설치할 때 따랐어야 하는 문서에도 포함되어 있습니다.

표준 설치로 진행했지만, 이건 거의 2년 전 이야기입니다. 업그레이드 과정이 첫 설치와 비슷하지만 완전히 동일하지는 않을 것 같다는 생각이 듭니다(예: 설정 어시스턴트를 실행하지 않거나, 컨테이너를 중지하는 등의 차이가 있을 수 있습니다). 아무것도 잃고 싶지 않습니다. (Docker에 대해 일부 학습을 했지만, 이 주제에 대해서는 여전히 초보 수준이라고 느낍니다.)

죄송합니다만, 질문하신 "세 가지 명령어를 입력하셨나요…"라는 말씀의 의도가 정확히 무엇인지 잘 모르겠습니다.

첫 번째 답변에 있는 "How do I manually update Discourse and docker image to latest"라는 링크를 클릭해 보셨나요? 해당 링크에는 다음 내용이 포함되어 있습니다:

따라서 업그레이드에 사용하는 명령어는 이것들입니다. 아무것도 잃어버리지 않습니다.

하지만 2년 전의 경우라면, 데이터베이스도 업그레이드해야 하므로 상황이 좀 더 복잡합니다. 따라서 PostgreSQL 13 업데이트를 확인해 보시는 것이 좋습니다. (보통은 두 번 재빌드하면 작동합니다.)

아, 링크인 걸 놓쳤네요. 이 링크와 추가 힌트를 통해 해결해 보겠습니다. 지금까지 정말 감사드립니다!!

@md-misko와 @pfaffman에게 매우 소중한 피드백을 주셔서 감사드립니다.

텍스트 조각 몇 개와 중요한 링크들을 내 라이브러리에 저장해 두었습니다.

그리고 제 문제는 git pull && launcher rebuild app 명령을 실행하면서 해결되었습니다. 빌드 과정을 지켜보니까 얼마나 복잡한지 잊고 있었네요.

Thomas

다행히 보통은 그냥 눈을 감으면 됩니다. :wink: