업데이트/재구축 오류 코드 1 (3.1.0.beta4 -> 3.3.0.beta3) - Redis 포트 6379 관련?

모두 안녕하세요, 제 첫 게시글입니다.

몇 년 전 인수한 DigitalOcean/Discourse 서버를 제대로 관리하지 못하다가, 방금 SSL 인증서를 재발급하고 앱을 업데이트/재구축하려 했더니 다음과 같은 오류가 발생했습니다.

I, [2024-07-04T10:58:00.012668 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2024-07-04T10:58:00.017822 #1]  INFO -- : > sleep 10
954:C 04 Jul 2024 10:58:00.044 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
954:C 04 Jul 2024 10:58:00.044 # Redis version=7.0.7, bits=64, commit=00000000, modified=0, pid=954, just started
954:C 04 Jul 2024 10:58:00.044 # Configuration loaded
954:M 04 Jul 2024 10:58:00.045 * monotonic clock: POSIX clock_gettime
954:M 04 Jul 2024 10:58:00.046 # Warning: Could not create server TCP listening socket *:6379: bind: Address already in use
954:M 04 Jul 2024 10:58:00.046 # Failed listening on port 6379 (TCP), aborting.
I, [2024-07-04T10:58:10.031866 #1]  INFO -- :
I, [2024-07-04T10:58:10.032253 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
rake aborted!
Gem::LoadError: can't activate stringio-3.1.1, already activated stringio-3.1.0 (Gem::LoadError)

…

FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 958 exit 1>
Location of failure: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
exec failed with the params {"cd"=>"$home", "tag"=>"migrate", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
bootstrap failed with exit code 1
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.
f71a114482f45f7cff5f8d045d314a0bd8d21cf3b1af7e8c2c0a7fc1722df4a5

첨부된 전체 로그를 확인해 주세요.

"sudo"를 사용하여 재구축 명령을 다시 시도해 보았습니다. 제가 무엇을 하는지 잘 알고 있으며, 그렇게 하면 무엇이든 해결된다는 이야기를 들었기 때문입니다… 하지만 소용이 없었습니다. :rofl:

가능하면 가장 간단한 단계로 조언해 주실 수 있을까요? 저는 모든 리눅스 명령에 익숙하지 않으며, Discourse 소프트웨어에 대해서도 거의 아는 것이 없습니다.

이 문제에 대한 도움에 감사드립니다.

플러그인 목록:

          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-data-explorer.git
          - git clone https://github.com/iunctis/discourse-formatting-toolbar.git
          - git clone https://github.com/paviliondev/discourse-locations.git
          - git clone https://github.com/paviliondev/discourse-events.git
          - git clone https://github.com/jannolii/discourse-topic-trade-buttons.git
          - git clone https://github.com/discourse/discourse-cakeday.git

제 app.yml 파일에는 MAXMIND 태그가 없습니다.

우선 비표준 플러그인을 제거하겠습니다.

감사합니다, @pfaffman!

Ubuntu를 업데이트하고 업그레이드한 뒤 서버를 재부팅하고 doctor를 실행했으며, 여러 번 재시도한 끝에 다음으로 이 방법을 시도하려던 참에, 제 추측을 확인해 주시는 답변을 보게 되었습니다.

Discourse가 아닌 플러그인을 비활성화했고, 재빌드가 성공적으로 완료되었습니다. 재발급된 SSL 인증서가 이제 사용 중이며, 우리가 이전처럼 설정해 두었던 대로 모든 것을 구성하는 데 시간을 좀 더 할애할 수 있게 되었습니다.

도와주셔서 감사드리며, 급박한 상황이 아닐 때 여기에서 더 많은 시간을 보내고 더 많은 것을 배울 수 있기를 바랍니다.

Let’s Encrypt 이전의 설정으로 설치된 것 같습니다. 따라서 수동으로 인증서를 관리할 필요가 없습니다. 새 VM으로 이전하는 것을 권장합니다 (운영 체제도 이미 수명 주기가 끝난 상태일 가능성이 높습니다). rsync를 사용하여 Discourse 사이트를 다른 VPS로 이동하기를 참고해 주세요.

그 조언도 감사합니다. 원래 5년 전쯤에 설정했던 자동 갱신 설정이었는데, 그동안은 어떻게든 어렵게 유지해 온 것 같습니다.

조금 알아보고, 이 조언을 잘 참고하겠습니다. 다시 한번 감사합니다, 제이.