빌드 오류: "vector" 확장 프로그램 생성 권한이 거부되었습니다

안녕하세요,

멀티사이트 Discourse 설치를 다시 빌드하는 과정에서 문제가 발생하고 있습니다. 아래에 오류 메시지를 첨부합니다.

  • ./launcher rebuild app 명령을 root 권한으로 실행하고 있습니다.
  • /var/discourse 디렉터리에서 git status를 확인했을 때 main 브랜치가 최신 상태라고 표시됩니다.
  • postgres 15.13이 실행 중이라고 보고됩니다:
    2025-08-14 10:35:04.390 UTC [45] LOG: starting PostgreSQL 15.13 (Debian 15.13-1.pgdg120+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit
  • docker_manager를 제외한 모든 플러그인을 비활성화했습니다.
  • discourse-doctor로 확인했을 때 문제가 발견되지 않았습니다.

오류 메시지는 다음과 같습니다:

I, [2025-08-14T10:35:56.213949 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'find /var/www/discourse/vendor/bundle -name cache -not -path "*/gems/*" -type d -exec rm -rf {} +'
I, [2025-08-14T10:35:56.325831 #1]  INFO -- : 
I, [2025-08-14T10:35:56.325961 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'find /var/www/discourse/vendor/bundle -name tmp -type d -exec rm -rf {} +'
I, [2025-08-14T10:35:56.430781 #1]  INFO -- : 
I, [2025-08-14T10:35:56.431139 #1]  INFO -- : > cd /var/www/discourse && sudo -E -u discourse bundle exec rake multisite:migrate
`/root` is not writable.
Bundler will use `/tmp/bundler20250814-776-hjo98w776' as your home directory temporarily.
2025-08-14 10:36:05.626 UTC [872] discourse@b_discourse ERROR:  permission denied to create extension "vector"
2025-08-14 10:36:05.626 UTC [872] discourse@b_discourse HINT:  Must be superuser to create this extension.
2025-08-14 10:36:05.626 UTC [872] discourse@b_discourse STATEMENT:  CREATE EXTENSION IF NOT EXISTS "vector"
2025-08-14 10:36:05.627 UTC [872] discourse@b_discourse ERROR:  current transaction is aborted, commands ignored until end of transaction block
2025-08-14 10:36:05.627 UTC [872] discourse@b_discourse STATEMENT:  SELECT 1 FROM pg_available_extensions WHERE name = 'vector';
2025-08-14 10:36:05.753 UTC [873] discourse@c_discourse ERROR:  permission denied to create extension "vector"
2025-08-14 10:36:05.753 UTC [873] discourse@c_discourse HINT:  Must be superuser to create this extension.
2025-08-14 10:36:05.753 UTC [873] discourse@c_discourse STATEMENT:  CREATE EXTENSION IF NOT EXISTS "vector"
2025-08-14 10:36:05.753 UTC [873] discourse@c_discourse ERROR:  current transaction is aborted, commands ignored until end of transaction block
2025-08-14 10:36:05.753 UTC [873] discourse@c_discourse STATEMENT:  SELECT 1 FROM pg_available_extensions WHERE name = 'vector';
2025-08-14 10:36:05.870 UTC [874] discourse@d_discourse ERROR:  permission denied to create extension "vector"
2025-08-14 10:36:05.870 UTC [874] discourse@d_discourse HINT:  Must be superuser to create this extension.
2025-08-14 10:36:05.870 UTC [874] discourse@d_discourse STATEMENT:  CREATE EXTENSION IF NOT EXISTS "vector"
2025-08-14 10:36:05.870 UTC [874] discourse@d_discourse ERROR:  current transaction is aborted, commands ignored until end of transaction block
2025-08-14 10:36:05.870 UTC [874] discourse@d_discourse STATEMENT:  SELECT 1 FROM pg_available_extensions WHERE name = 'vector';

도움이나 해결 방향에 대한 조언을 주시면 감사하겠습니다!

루트 사용자로 실행 중이신가요 (이전에 sudo -s를 실행하셨나요)?

안녕하세요 @NateDhaliwal, 네, 저는 루트 권한으로 실행하고 있습니다.

저는 postgres에서 해결했습니다 (먼저 service restart docker로 docker를 재시작해야 했습니다)

./launcher enter app
sudo -u postgres psql

그리고 각 사이트의 데이터베이스에 대해 다음을 실행했습니다:

\c b_discourse
CREATE EXTENSION IF NOT EXISTS vector;