관리 콘솔 업그레이드 실패

관리자 콘솔을 사용했을 때 다음과 같은 메시지가 표시되었습니다. 이전에는 정상적으로 작동했었는데 말이죠.

웹 UI를 통한 업그레이드는 최신 이미지를 실행할 때까지 비활성화됩니다.

이를 수행하려면 SSH를 통해 서버에 로그인한 다음 다음을 실행하세요:

    cd /var/discourse
    git pull
    ./launcher rebuild app

간단한 설명을 따라 했더니 다음과 같은 오류 메시지가 나타났습니다.

FAILED

Pups::ExecError: cd /var/www/discourse && su discourse -c ‘bundle exec rake themes:update assets:precompile’ failed with return #<Process::Status: pid 518 exit 1>
Location of failure: /pups/lib/pups/exec_command.rb:112:in `spawn’
exec failed with the params {“cd”=>“$home”, “hook”=>“assets_precompile”, “cmd”=>[“su discourse -c ‘bundle exec rake themes:update assets:precompile’”]}
e3eb2969bd230aeaf5a9405901e7059aa898c61b41eec2156960a6bd2e08dd33
** FAILED TO BOOTSTRAP ** 이전의 오류 메시지를 확인하려면 위로 스크롤하세요. 오류가 여러 개 있을 수 있습니다.
./discourse-doctor가 문제를 진단하는 데 도움이 될 수 있습니다.

./discourse-doctor를 실행하면 재빌드가 시작되지만, 관리자 업그레이드 콘솔에서는 여전히 동일한 문제가 발생합니다.

오류는 로그의 더 위쪽에 있습니다.

로그 파일을 확인하거나 게시해 주시겠습니까?

얼마나 더 올라가야 할지 모르겠으니, 여기 더 많은 정보를 드립니다.

Error response from daemon: driver failed programming external connectivity on endpoint app (1e145a00615964e521bbfcec584bb3adf14171590767841a1eaa58e04b064615): Error starting userland proxy: listen tcp4 0.0.0.0:443: bind: address already in use
Error: failed to start containers: app
컨테이너 재시작에 실패했습니다.

로그 파일을 첨부했습니다
discourse-debug.txt (167.5 KB)

다른 웹 서버가 실행 중인 것으로 보입니다. 포트가 열려 있는지 확인하거나 apache 또는 nginx가 실행 중인지 확인해 볼 수 있습니다.

에러가 있는 테마가 있는 것으로 보입니다. 다음을 실행해 볼 수 있습니다.

 ./launcher start app

서버를 재시작하는 것입니다(포트 443에 다른 것이 실행 중이면 작동하지 않음) 그리고 업그레이드 후 테마를 제거했다가 다시 추가해 보는 것입니다.

포트 443을 사용하는 프로토콜은 이 두 개뿐입니다

root@geeksove:/var/discourse# sudo lsof -i:443
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
docker-pr 44758 root 4u IPv4 926438 0t0 TCP *:https (LISTEN)
docker-pr 44764 root 4u IPv6 926445 0t0 TCP *:https (LISTEN)
root@geeksove:/var/discourse#

그럼 이 내용은 무엇을 의미하나요

    docker ps

root@geeksove:/var/discourse# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8bf07ae47872 local_discourse/app “/sbin/boot” 7 weeks ago Up 2 hours 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp app

도움 주셔서 감사합니다

Keith

즉, 디스커스가 이미 실행 중이라는 뜻입니다.

네, 업그레이드 모듈을 제외한 나머지는 잘 작동합니다. 하지만 계속 원래 메시지로 돌아가요–

제가 보기에는 문제가 되는 테마 컴포넌트가 있는 것 같습니다. 문제를 찾기까지 해당 컴포넌트를 제거한 뒤 업그레이드를 진행하고, 다시 테마를 추가해 보셔야 합니다. 제 생각에는요.