재구축 시 끝에 [FAILED] 메시지가 표시됩니까?
이 실패 경고 바로 앞 줄을 보여 주실 수 있나요? (가능한 한 많이)
그 안에서 몇 가지 단서를 찾을 수 있을 것입니다.
재구축 시 끝에 [FAILED] 메시지가 표시됩니까?
이 실패 경고 바로 앞 줄을 보여 주실 수 있나요? (가능한 한 많이)
그 안에서 몇 가지 단서를 찾을 수 있을 것입니다.
마지막에 FAILED 메시지가 있는 것 같지 않아요. 한 번 더 빌드를 돌려볼게요. 감사합니다!
재구축이 끝까지 진행되면, 깨진 플러그인이나 테마 구성 요소일 가능성이 높습니다.
브라우저의 콘솔(F12)을 열어 빨간색 경고가 있는지 확인해 보세요.
또한 [your-forum]/safe-mode를 사용해 플러그인과 테마 없이 포럼을 로드해 볼 수도 있습니다.
네, 실패는 없어요. 빌드가 정상적으로 끝나는 것 같고, docker run도 정상적으로 실행되는 것 같아요.
콘솔에서 눈에 띄는 오류는 없습니다. 안전 모드를 실행해 보려 했지만 Chrome에서 “사이트에 연결할 수 없음” 오류가 발생했습니다. 하지만 홈페이지와 정적 메시지는 정상적으로 접근할 수 있습니다.
현재 프로덕션 로그의 끝부분입니다:
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/redis-4.5.1/lib/redis.rb:72:in `block in synchronize'
/usr/local/lib/ruby/2.7.0/monitor.rb:202:in `synchronize'
/usr/local/lib/ruby/2.7.0/monitor.rb:202:in `mon_synchronize'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/redis-4.5.1/lib/redis.rb:72:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/redis-4.5.1/lib/redis.rb:966:in `get'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/message_bus-3.3.8/lib/message_bus/backends/redis.rb:366:in `process_global_backlog'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/message_bus-3.3.8/lib/message_bus/backends/redis.rb:274:in `block in global_subscribe'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/message_bus-3.3.8/lib/message_bus/backends/redis.rb:287:in `global_subscribe'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/message_bus-3.3.8/lib/message_bus.rb:786:in `global_subscribe_thread'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/message_bus-3.3.8/lib/message_bus.rb:734:in `block in new_subscriber_thread'
플러그인 목록을 공유해 주시겠어요? 아니면 DM으로 포럼 URL을 보내주시면 확인해 볼 수 있습니다.
[your_forum]/logs에 도움이 되는 내용이 있나요? [your_forum]/sidekiq에 에러 목록이 있나요?
문제를 찾는데 도움을 드릴 정보가 많지 않습니다.
먼저, (매우 짧은) 플러그인 목록을 소개하겠습니다. 다음은 app.yml에 나열된 모든 플러그인입니다:
- git clone https://github.com/discourse/docker_manager.git
- git clone https://github.com/discourse/discourse-push-notifications.git
- git clone https://github.com/davidtaylorhq/discourse-whos-online.git
Who’s Online 플러그인이 9월에 공식 버전으로 전환된 것 같습니다. 업데이트된 저장소를 사용해 보시면 도움이 될 수 있습니다.
https://github.com/discourse/discourse-whos-online
이 문제에 대한 업데이트입니다. 조언해 주신 모든 분들께 감사드립니다. 핵심 문제(하나를 제외하고)는 겉보기에 (추가 테스트가 더 필요하지만) 해결된 것 같습니다. 남은 명백한 문제는 SSL 인증서가 더 이상 갱신되지 않는다는 점이며, 여기에서 권장하는 수동 갱신 과정조차 작동하지 않습니다. Let’s Encrypt가 ‘well known’ 디렉터리에서 검증 파일에 접근할 수 없는 것으로 보입니다. 이 문제는 이전에는 거의 3년 동안 잘 작동해 왔습니다. 따라서 이 문제는 여전히 남아 있으며, 특히 이 상황에서 HSTS가 Chrome을 완전히 차단하기 때문에 더욱 큰 문제입니다.
한참 엉망인 것 같습니다.
discourse-doctor를 실행해 보시면 어떤 단서를 얻을 수 있을지도 모릅니다. 몇 가지 아이디어는 있지만, 서버에 접근할 수 없기 때문에 제 같은 초보자가 도움을 드리기에는 시간이 너무 오래 걸릴 것입니다.
제가 그 자리에 있다면 아마 모든 것을 재설치했을 것 같습니다.
1. 백업
cd /var/discourse
./launcher enter app
discourse backup
sftp를 통해 백업을 가져오세요 (sftp 프로토콜, 포트 22, 호스트: 서버 IP, 로그인: root, 비밀번호: root 비밀번호)
백업에 uploads 폴더가 포함되어 있는지 확인하세요. 없다면 하드 드라이브에 해당 폴더의 로컬 사본을 만들어 두세요.
2. 삭제, VPS 재설치 또는 다른 VPS 사용
discourse 설치 설정을 사용하세요. 모든 것이 정상이라면: 로그인하여 백업을 업로드하고 복원합니다.
(명령줄에서 백업을 복원할 수도 있으며, 더 빠릅니다: Restore a backup from the command line)
이 부분에 대해 확신이 없다면, 더 자격이 있는 사람의 답변을 기다리는 것이 가장 좋습니다. ![]()
감사합니다. SSL 문제를 해결하기 위해 그 방법을 따르는 건 좋은 생각이 아닌 것 같아요. 다른 문제들은 해결된 것 같으니, 더 구체적인 해결책이 있을 거예요. 그래도 다시 한번 감사합니다.
즉, /var/discourse/shared/standalone/ssl 디렉터리에는 마지막 시도에서 새로 작성된 키와 인증서가 있는 것으로 보입니다. 하지만 로그에는 명확하게 검증 오류가 표시되어 있고, 사이트가 실제로 해당 키와 인증서를 사용하지 않고 있습니다. 또한 – 단순히 표시 문제일 수도 있지만 – 이 경우 로그에 올바른 경로가 표시되지 않습니다. 예를 들어 키 설치 위치를 다음과 같이 표시합니다:
/shared/ssl/[site]_ecc.key
하지만 실제 경로는 /shared/standalone/ssl입니다.
최소한 이상해 보입니다.
일반적인 오류는 다음과 같습니다:
[site]:Verify error:Fetching http://[site]/.well-known/acme-challenge/[challenge string]: Error getting validation data
참고로, 이 사이트는 모든 사용자 접근에 로그인이 필요하지만, 수년간의 운영 기간 동안 SSL 인증서 갱신에는 문제가 된 적이 없습니다.
다른 문제들이 해결되었기 때문에, SSL 관련 질문은 별도의 스레드로 옮기겠습니다. 감사합니다!