Digital Ocean에서 설치 후 443 및 80 포트에서 Discourse 연결이 거부됩니다

Digital Ocean에서 Discourse를 설치한 후 포트 443과 80에서 연결 거부 오류가 발생한 문제를 겪고 나서, 다른 분들에게 도움이 될 만한 해결 방법을 공유하고자 합니다.

제 실수는 redis가 "bye bye"라고 표시한 후 1~2분 정도 멈춰 있는 동안, 작업이 끝났다고 오해하고 콘솔을 닫은 것이었습니다.

조금 기다려 주셔야 합니다. 다음 명령을 실행하여 앱을 재빌드하고 기다려 보세요.

cd /var/discourse
./launcher rebuild app

DNS 오류 등 다양한 게시글을 읽다가 제 실수를 깨달았으니, 이 정보가 누군가에게 도움이 되길 바랍니다.

또 다른 방법은 tmux를 사용하여 연결을 끊어도 프로세스가 계속 실행되도록 하는 것입니다. (다음 로그인 시 tmux attach를 사용하여 다시 연결할 수 있습니다)

내 권한 밖의 일 :rofl:

아마도 Ubuntu나 유사한 배포판을 사용 중이실 것 같습니다.

apt update && apt install tmux

그 다음 tmux 명령을 실행하세요.

그 터미널에서 Discourse를 정상적으로 업그레이드하면 됩니다.

이제 해당 창을 닫거나 다른 일을 하러 나가도, tmux 세션은 백그라운드에서 계속 실행됩니다. 새 셸을 열면 tmux attach -t 0 명령으로 해당 세션을 다시 붙여 볼 수 있습니다(여러 세션을 동시에 열어두지 않았기 때문에 0번 세션일 가능성이 높습니다).

저처럼 아이패드로 작업을 하다 업그레이드를 시작하고, 일하는 건 지루하니까 영화를 보거나 소셜 미디어를 무한 스크롤하는 경우에도, 다시 셸로 돌아왔을 때 업그레이드가 완료되어 있는 것을 확인할 수 있습니다. 그리고 exit를 입력해 tmux 창을 닫으면 끝입니다.

그 점 이해합니다.

tmux는 한 번도 사용해 본 적 없지만, screen도 동일한 역할을 수행합니다. 기본 사용법은 꽤 간단하며, 특히 목표가 단순히 프로세스를 일정 시간 동안 실행하는 것이라면 더욱 그렇습니다.
명령어 하나와 키보드 단축키 하나 또는 두 개면 충분합니다.

매우 특수한 경우이지만, 저는 주로 iPad를 사용하므로 screen 대신 tmux를 사용하는 데 두 가지 이유가 있습니다.

  • screen을 사용하면 내가 어디에 있는지 금세 혼란스러워집니다.
  • 스크롤하는 방법을 찾지 못했었습니다. 이제 업그레이드하면서 익숙하지 않은 메시지가 표시되고, screen을 사용했기 때문에 스크롤을 하면 bash 히스토리를 넘기는 것만 됩니다.

저도 tmux를 추천합니다. 기본 사용법을 배우는 데 몇 분밖에 걸리지 않으며, 긴 실행 시간을 가진 작업에서는 정말 유용합니다.

이전 직장에서 24시간 이상 실행되는 내보내기 프로세스가 있었는데, 인터넷 연결이 끊기거나 맥북이 절전 모드로 전환되면 처음부터 다시 시작해야 했습니다. tmux 덕분에 여러 번 위기를 모면했습니다. :smiley: