안녕하세요,
자… 우리 Discourse 서버는 몇 년 전에 [누가 만든지 전혀 모릅니다]에 의해 구축되었습니다. Docker 컨테이너에서 호스팅되고 있습니다. 모든 면에서 잘 작동하고 있습니다. 그러나 이메일은 더 이상 사용되지 않는 주소로 설정되어 있습니다. /var/www/discourse 디렉터리에서 “Containers” 폴더나 “app.yml” 파일을 찾을 수 없었지만, /var/www/discourse/config 디렉터리에서 “discourse.conf” 파일을 찾을 수 있었습니다. 이 파일은 “app.yml” 파일과 거의 동일한 내용을 담고 있습니다:
hostname = 'discourse.domain.com'
smtp_user_name = 'serviceUser@domain.com'
smtp_address = 'smtp.gmail.com'
db_socket = '/var/run/postgresql'
developer_emails = 'serviceUser@domain.com'
smtp_port = '587'
smtp_password = 'pwd'
db_host = ''
db_port = ''
smtp_enable_start_tls = 'true'
force_https = 'true'
사용자 이름, 개발자 이메일, 비밀번호를 업데이트한 후 . / launcher rebuild app 명령을 실행해 보았습니다. "bash: . / launcher: No such file or directory"라는 오류 메시지가 표시되었습니다. 당연히 이메일 변경은 적용되지 않았고, discourse.domain.com/admin/emails 페이지에는 여전히 이전 정보가 남아 있었습니다.
하지만 업데이트를 실행했는데, 이 과정에서 앱이 다시 구축되면서 갑자기 이메일 변경이 적용되었습니다. 그러나… 성공은 잠시뿐이었습니다. 기기를 재부팅했더니, 이전 설정과 이전 이메일 정보로 돌아가 버렸거든요.
나는 영리한 방법을 찾아서 다시 변경 사항을 적용하고, 실행 중인 인스턴스를 새로운 로컬 Docker 이미지로 커밋한 후, 실행 중인 인스턴스를 중지하고 새 이미지를 실행해 보았습니다. 그러나 /etc/runit/folder/anacron 스크립트가 “can’t chdir to /var/spool/anacron” 오류를 내뱉으면서 작동하지 않았습니다. 그래서… 저는 다시 제로베이스로 돌아와서 TNT를 꺼내려는 상태입니다.
질문:
- . / launcher 또는 “Containers” 폴더가 누락된 사례를 들어보신 분이 계신가요? 만약 있다면, 이 문제를 해결하기 위해 무엇을 하셨나요?
- 전체를 다시 구축하는 것이 더 나은 방법일까요? 만약 그렇다면, 새로운 Discourse 서버를 구축하고 백업된 데이터를 업로드하는 방법에 대한 지식 베이스(KB) 문서를 알려주실 수 있을까요?
추가로 필요한 정보가 있다면 알려주시고, 미리 감사드립니다.
D. Lasa