업데이트 후 사이트가 열리지 않습니다

며칠 전 셀프 호스팅한 Discourse 사이트(Ubuntu 18.04.6, Contabo)에 업데이트가 필요하다는 이메일 알림을 받았고, 업데이트를 진행하려고 관리자 페이지로 이동했습니다. 평소와 마찬가지로 먼저 docker-manager를 업데이트한 후 사이트의 나머지 업데이트를 실행해야 했습니다. 그런데 업데이트가 특정 지점에서 멈춰버렸고, 이후로는 전혀 진행되지 않았습니다. 약 1시간 정도 그렇게 있다가 CLI로 개입해야겠다고 판단하여 서버에 SSH로 접속한 뒤 cd /var/discourse; git pull; ./launcher rebuild app 명령을 실행했습니다. 오류 없이 완료되었지만, 현재 사이트는 다음과 같은 상태입니다:
image

(실제로는 점들이 애니메이션으로 움직입니다.) 소프트웨어가 시작하는 데 시간이 좀 걸리는 건가 싶어 기다렸는데, 실제로 하루가 넘게 기다렸지만 아무 변화가 없었습니다. 서버를 재부팅하거나 다시 빌드해도 효과가 없었습니다.

흥미롭게도, 사용자는 여전히 이메일로 게시물을 작성할 수 있으며, 사이트도 이를 정상적으로 발송하고 있습니다.

사이트를 다시 정상적으로 가동하기 위해 어떤 조치를 취해야 할지 조언을 구합니다.

안녕하세요, Dan :slight_smile:

안전 모드에서는 작동하나요? 가능하시다면 링크를 공유해 주시면 확인해 볼 수 있을 것 같습니다.

안전 모드를 시도해 볼 수 있다는 걸 몰랐어요. 하지만 그렇네요, 그렇게 뜨는 것 같습니다. 사이트 주소는 다음과 같습니다:

안전 모드에서 작동한다면, 플러그인, 테마 또는 테마 컴포넌트 중 하나가 어떤 종류의 충돌을 일으키고 있을 수 있습니다. 안전 모드 화면의 옵션을 사용하여 원인을 좁혀 나가는 데 도움을 받을 수 있습니다.

'비공식 플러그인’만 비활성화하면 작동하는 것 같습니다:

안전 모드가 아닌 상태에서 사이트를 로드하려고 할 때 브라우저 콘솔에서 이 오류를 확인할 수 있습니다:

Uncaught (in promise) Error: Could not find module `admin/models/admin-user` imported from `discourse/plugins/discourse-merge-users/discourse/components/merge-users-form`
    c loader.js:247
    c loader.js:258
    findDeps loader.js:168
    c loader.js:262
    requireModule loader.js:24
    Ember 3
    resolveOther resolver.js:241
    Ember 5
    initialize colocated-template-overrides.js:31
    eachThemePluginTemplate colocated-template-overrides.js:41
    initialize colocated-template-overrides.js:22
    initialize app.js:41
    runInstanceInitializers Ember
    each dag-map.js:192
    walk dag-map.js:121
    each dag-map.js:66
    topsort dag-map.js:72
    Ember 4
    invoke queue.ts:201
    flush queue.ts:98
    flush deferred-action-queues.ts:75
    _end index.ts:616
    _boundAutorunEnd index.ts:257
    promise callback*n/< platform.ts:28
    flush Ember
    _scheduleAutorun index.ts:803
    _ensureInstance index.ts:791
    schedule index.ts:384
    Ember 6
    <anonymous> start-app.js:4
    <anonymous> discourse-boot.js:18
    <anonymous> discourse-boot.js:19
loader.js:247

이 오류는 discourse-merge-users 플러그인의 문제를 가리키고 있습니다. 해당 플러그인 없이 다시 빌드해 보아 그것이 문제인지 확인해 볼 수 있습니다. :+1:

플러그인 토픽을 확인해 보면, 이 플러그인은 비활성화(deprecated)되었으며 이것이 알려진 문제인 것으로 보입니다:

사실상 그것이 문제였던 것 같습니다. 해당 플러그인을 제외하고 다시 빌드하니 문제가 해결되었어요. 다만 공유해주신 토픽에는 문제가 관리자 권한이 없는 사람에게서 나타나는 것처럼 되어 있는데, 저는 관리자 권한이 있습니다. 하지만 플러그인을 비활성화하자 사이트가 다시 정상적으로 작동하는 것 같습니다. 빠르고 핵심을 찌르는 도움 주셔서 감사합니다.

걱정 마세요. 도와드릴 수 있어서 기쁩니다. :slight_smile: