Не удается установить плагин реакции

Я попытался установить свой первый плагин — плагин реакций — следуя этому руководству.

Мой файл .yml выглядит так:

## Plugins go here
## see https://meta.discourse.org/t/19157 for details
hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-reactions.git

## Any custom commands to run after building

Я правильно сохранил его и выполнил ./launcher rebuild app.

Я не могу найти плагин нигде в панели администратора. Я перезагрузил сервер и попытался выполнить повторную сборку, но его всё равно нет. Я ещё раз проверил файл .yml, и ссылка git clone там всё ещё корректна.

Я работаю на сервере Ubuntu 22.04, который обновлён до последней версии.

Есть какие-то идеи?

Хм. Это довольно необычно. И пересборка прошла успешно? (И на правильном сервере. Звучит глупо, но такое уже случалось :slight_smile:)

И это точно не на вашей странице /admin/plugins?

Я не заметил никаких ошибок при первой пересборке после установки плагина, но я попытался выполнить пересборку ещё раз, чтобы проверить, сработает ли она, и в этот раз ошибки появились:

error Error: https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz: ESOCKETTIMEDOUT
    at ClientRequest.<anonymous> (/usr/share/yarn/lib/cli.js:142037:19)
    at Object.onceWrapper (node:events:631:28)
    at ClientRequest.emit (node:events:517:28)
    at TLSSocket.emitRequestTimeout (node:_http_client:847:9)
    at Object.onceWrapper (node:events:631:28)
    at TLSSocket.emit (node:events:529:35)
    at Socket._onTimeout (node:net:598:8)
    at listOnTimeout (node:internal/timers:569:17)
    at process.processTimers (node:internal/timers:512:7)
I, [2024-06-09T15:50:06.758203 #1]  INFO -- : yarn install v1.22.22
[1/5] Validating package.json...
[2/5] Resolving packages...
[3/5] Fetching packages...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info There appears to be trouble with your network connection. Retrying...
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

I, [2024-06-09T15:50:06.760651 #1]  INFO -- : Terminating async processes
I, [2024-06-09T15:50:06.760756 #1]  INFO -- : Sending INT to HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main pid: 36
I, [2024-06-09T15:50:06.760884 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 98
2024-06-09 15:50:06.820 UTC [36] LOG:  received fast shutdown request
98:signal-handler (1717948206) Received SIGTERM scheduling shutdown...
98:M 09 Jun 2024 15:50:06.821 # User requested shutdown...
98:M 09 Jun 2024 15:50:06.821 * Saving the final RDB snapshot before exiting.
2024-06-09 15:50:06.843 UTC [36] LOG:  aborting any active transactions
2024-06-09 15:50:06.853 UTC [36] LOG:  background worker "logical replication launcher" (PID 51) exited with exit code 1
2024-06-09 15:50:06.854 UTC [46] LOG:  shutting down
2024-06-09 15:50:06.994 UTC [36] LOG:  database system is shut down
98:M 09 Jun 2024 15:50:07.069 * DB saved on disk
98:M 09 Jun 2024 15:50:07.069 # Redis is now ready to exit, bye bye...


FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'yarn install --frozen-lockfile && yarn cache clean' failed with return #<Process::Status: pid 274 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", "hook"=>"yarn", "cmd"=>["if [ \"$version\" != \"tests-passed\" ]; then\n  rm -rf app/assets/javascripts/node_modules\nfi", "su discourse -c 'yarn install --frozen-lockfile && yarn cache clean'"]}
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.
369d797bef305a3d8e265ae1c7a22c3fa0c773883a73f928eeff5ce9d2f9eb02

Форум сейчас недоступен после пересборки.

Попробуйте эту ссылку.

В файле app.yml запустите ./discourse-doctor

Я только что запустил Discourse Doctor, и он спрашивает, хочу ли я создать общедоступную версию файла. Я не хочу, чтобы моя информация была публичной. Есть ли способ сделать это без публичного доступа, но при этом поделиться файлом?

Я всегда выбирал N (Нет) без каких-либо проблем. Я не могу точно сказать, какой используется бэкенд, но, возможно, это поможет вам решить эту проблему.

Вот вывод discourse doctor:

DISCOURSE DOCTOR Sun Jun 9 16:11:34 UTC 2024
ОС: Linux hv-client-35215-device-38240 5.15.0-112-generic #122-Ubuntu SMP Thu May 23 07:48:21 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux


Найден файл containers/app.yml

==================== НАСТРОЙКИ YML ====================
DISCOURSE_HOSTNAME=
SMTP_ADDRESS=
DEVELOPER_EMAILS=СКРЫТО 
SMTP_PASSWORD=СКРЫТО 
SMTP_PORT=587
SMTP_USER_NAME=
LETSENCRYPT_ACCOUNT_EMAIL=СКРЫТО 

==================== ИНФОРМАЦИЯ О DOCKER ====================
ВЕРСИЯ DOCKER: Docker version 24.0.5, build 24.0.5-0ubuntu1~22.04.1

ПРОЦЕССЫ DOCKER (docker ps -a)

ID КОНТЕЙНЕРА   ОБРАЗ                 КОМАНДА        СОЗДАН      СТАТУС                      ПОРТЫ     ИМЯ
88f5e9f2ae3b   local_discourse/app   "/sbin/boot"   3 недели назад   Завершён (5) 29 минут назад             app

==================== СЕРЬЁЗНАЯ ПРОБЛЕМА!!!! ====================
app не запущен!
Попытка пересборки
==================== ЖУРНАЛ ПЕРЕСБОРКИ ====================
Обнаружена архитектура x86_64.
Убедимся, что launcher обновлён
Получаем origin
Launcher актуален
Остановка старого контейнера
+ /usr/bin/docker stop -t 600 app
app
2.0.20240602-0023: Pulling from discourse/base
Digest: sha256:5e0c30da851a00e824a58b033d59b8f3dd840b513a7694a7a5d0674285c0ee3c
Статус: Образ актуален для discourse/base:2.0.20240602-0023
docker.io/discourse/base:2.0.20240602-0023
/usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups.rb
/usr/local/bin/pups --stdin
I, [2024-06-09T16:12:00.126218 #1]  INFO -- : Чтение из stdin
I, [2024-06-09T16:12:00.147839 #1]  INFO -- : Файл > /etc/service/postgres/run  chmod: +x  chown: 
I, [2024-06-09T16:12:00.155377 #1]  INFO -- : Файл > /etc/service/postgres/log/run  chmod: +x  chown: 
I, [2024-06-09T16:12:00.162120 #1]  INFO -- : Файл > /etc/runit/3.d/99-postgres  chmod: +x  chown: 
I, [2024-06-09T16:12:00.168391 #1]  INFO -- : Файл > /root/install_postgres  chmod: +x  chown: 
I, [2024-06-09T16:12:00.174232 #1]  INFO -- : Файл > /root/upgrade_postgres  chmod: +x  chown: 
I, [2024-06-09T16:12:00.174569 #1]  INFO -- : Замена data_directory = '/var/lib/postgresql/13/main' на data_directory = '/shared/postgres_data' в /etc/postgresql/13/main/postgresql.conf
I, [2024-06-09T16:12:00.176474 #1]  INFO -- : Замена (?-mix:#?listen_addresses *=.*) на listen_addresses = '*' в /etc/postgresql/13/main/postgresql.conf
I, [2024-06-09T16:12:00.181474 #1]  INFO -- : Замена (?-mix:#?synchronous_commit *=.*) на synchronous_commit = $db_synchronous_commit в /etc/postgresql/13/main/postgresql.conf
I, [2024-06-09T16:12:00.197097 #1]  INFO -- : Замена (?-mix:#?shared_buffers *=.*) на shared_buffers = $db_shared_buffers в /etc/postgresql/13/main/postgresql.conf
I, [2024-06-09T16:12:00.204913 #1]  INFO -- : Замена (?-mix:#?work_mem *=.*) на work_mem = $db_work_mem в /etc/postgresql/13/main/postgresql.conf
I, [2024-06-09T16:12:00.207341 #1]  INFO -- : Замена (?-mix:#?default_text_search_config *=.*) на default_text_search_config = '$db_default_text_search_config' в /etc/postgresql/13/main/postgresql.conf
I, [2024-06-09T16:12:00.209062 #1]  INFO -- : Замена (?-mix:#?checkpoint_segments *=.*) на checkpoint_segments = $db_checkpoint_segments в /etc/postgresql/13/main/postgresql.conf
I, [2024-06-09T16:12:00.211320 #1]  INFO -- : Замена (?-mix:#?logging_collector *=.*) на logging_collector = $db_logging_collector в /etc/postgresql/13/main/postgresql.conf
I, [2024-06-09T16:12:00.213228 #1]  INFO -- : Замена (?-mix:#?log_min_duration_statement *=.*) на log_min_duration_statement = $db_log_min_duration_statement в /etc/postgresql/13/main/postgresql.conf
I, [2024-06-09T16:12:00.215253 #1]  INFO -- : Замена (?-mix:^#local +replication +postgres +peer$) на local replication postgres  peer в /etc/postgresql/13/main/pg_hba.conf
I, [2024-06-09T16:12:00.216273 #1]  INFO -- : Замена (?-mix:^host.*all.*all.*127.*$) на host all all 0.0.0.0/0 md5 в /etc/postgresql/13/main/pg_hba.conf
I, [2024-06-09T16:12:00.224544 #1]  INFO -- : Замена (?-mix:^host.*all.*all.*::1\/128.*$) на host all all ::/0 md5 в /etc/postgresql/13/main/pg_hba.conf
I, [2024-06-09T16:12:00.240561 #1]  INFO -- : > [ -f /root/install_postgres ] && /root/install_postgres && rm -f /root/install_postgres
I, [2024-06-09T16:12:04.764680 #1]  INFO -- : Генерация локалей (это может занять некоторое время)...
Генерация завершена.

I, [2024-06-09T16:12:04.765009 #1]  INFO -- : > HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main
I, [2024-06-09T16:12:04.782630 #1]  INFO -- : Файл > /usr/local/bin/create_db  chmod: +x  chown: 
I, [2024-06-09T16:12:04.792990 #1]  INFO -- : Файл > /var/lib/postgresql/take-database-backup  chmod: +x  chown: postgres:postgres
I, [2024-06-09T16:12:04.797112 #1]  INFO -- : Файл > /var/spool/cron/crontabs/postgres  chmod:   chown: 
I, [2024-06-09T16:12:04.797535 #1]  INFO -- : > sleep 5
2024-06-09 16:12:05.036 UTC [36] LOG:  запуск PostgreSQL 13.15 (Debian 13.15-1.pgdg110+1) на x86_64-pc-linux-gnu, скомпилирован gcc (Debian 10.2.1-6) 10.2.1 20210110, 64-бит
2024-06-09 16:12:05.042 UTC [36] LOG:  прослушивание IPv4-адреса "0.0.0.0", порт 5432
2024-06-09 16:12:05.043 UTC [36] LOG:  прослушивание IPv6-адреса "::", порт 5432
2024-06-09 16:12:05.115 UTC [36] LOG:  прослушивание Unix-сокета "/var/run/postgresql/.s.PGSQL.5432"
2024-06-09 16:12:05.141 UTC [45] LOG:  система баз данных была выключена в 2024-06-09 15:50:06 UTC
2024-06-09 16:12:05.172 UTC [36] LOG:  система баз данных готова принимать подключения
I, [2024-06-09T16:12:09.802209 #1]  INFO -- : 
I, [2024-06-09T16:12:09.802472 #1]  INFO -- : > /usr/local/bin/create_db
2024-06-09 16:12:09.924 UTC [55] postgres@postgres ERROR:  база данных "discourse" уже существует
2024-06-09 16:12:09.924 UTC [55] postgres@postgres STATEMENT:  CREATE DATABASE discourse;
createdb: ошибка: создание базы данных не удалось: ERROR:  база данных "discourse" уже существует
2024-06-09 16:12:10.236 UTC [58] postgres@discourse ERROR:  роль "discourse" уже существует
2024-06-09 16:12:10.236 UTC [58] postgres@discourse STATEMENT:  create user discourse;
ERROR:  роль "discourse" уже существует
NOTICE:  расширение "hstore" уже существует, пропускаем
NOTICE:  расширение "pg_trgm" уже существует, пропускаем
NOTICE:  расширение "vector" уже существует, пропускаем
NOTICE:  расширение "hstore" уже существует, пропускаем
NOTICE:  расширение "pg_trgm" уже существует, пропускаем
NOTICE:  расширение "vector" уже существует, пропускаем
I, [2024-06-09T16:12:11.611371 #1]  INFO -- : GRANT
ALTER SCHEMA
CREATE EXTENSION
CREATE EXTENSION
CREATE EXTENSION
CREATE EXTENSION
CREATE EXTENSION
CREATE EXTENSION
UPDATE 0

I, [2024-06-09T16:12:11.612138 #1]  INFO -- : > echo postgres installed!
I, [2024-06-09T16:12:11.615822 #1]  INFO -- : postgres установлен!

I, [2024-06-09T16:12:11.625092 #1]  INFO -- : Файл > /etc/service/redis/run  chmod: +x  chown: 
I, [2024-06-09T16:12:11.633574 #1]  INFO -- : Файл > /etc/service/redis/log/run  chmod: +x  chown: 
I, [2024-06-09T16:12:11.642438 #1]  INFO -- : Файл > /etc/runit/3.d/10-redis  chmod: +x  chown: 
I, [2024-06-09T16:12:11.643464 #1]  INFO -- : Замена daemonize yes на  в /etc/redis/redis.conf
I, [2024-06-09T16:12:11.645641 #1]  INFO -- : Замена (?-mix:^pidfile.*$) на  в /etc/redis/redis.conf
I, [2024-06-09T16:12:11.729106 #1]  INFO -- : > install -d -m 0755 -o redis -g redis /shared/redis_data
I, [2024-06-09T16:12:11.737439 #1]  INFO -- : 
I, [2024-06-09T16:12:11.738307 #1]  INFO -- : Замена (?-mix:^logfile.*$) на logfile "" в /etc/redis/redis.conf
I, [2024-06-09T16:12:11.767277 #1]  INFO -- : Замена (?-mix:^bind .*$) на  в /etc/redis/redis.conf
I, [2024-06-09T16:12:11.770596 #1]  INFO -- : Замена (?-mix:^dir .*$) на dir /shared/redis_data в /etc/redis/redis.conf
I, [2024-06-09T16:12:11.775175 #1]  INFO -- : Замена (?-mix:^protected-mode yes) на protected-mode no в /etc/redis/redis.conf
I, [2024-06-09T16:12:11.787974 #1]  INFO -- : Замена # io-threads 4 на io-threads $redis_io_threads в /etc/redis/redis.conf
I, [2024-06-09T16:12:11.791757 #1]  INFO -- : > echo redis установлен
I, [2024-06-09T16:12:11.800447 #1]  INFO -- : redis установлен

I, [2024-06-09T16:12:11.801001 #1]  INFO -- : > cat /etc/redis/redis.conf | grep logfile
I, [2024-06-09T16:12:11.817020 #1]  INFO -- : logfile ""

I, [2024-06-09T16:12:11.817748 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2024-06-09T16:12:11.822066 #1]  INFO -- : > sleep 10
98:C 09 Jun 2024 16:12:11.856 # oO0OoO0OoO0Oo Redis запускается oO0OoO0OoO0Oo
98:C 09 Jun 2024 16:12:11.862 # Версия Redis=7.0.7, биты=64, commit=00000000, modified=0, pid=98, только что запущен
98:C 09 Jun 2024 16:12:11.862 # Конфигурация загружена
98:M 09 Jun 2024 16:12:11.874 * монохронные часы: POSIX clock_gettime
98:M 09 Jun 2024 16:12:11.876 * Режим работы=standalone, порт=6379.
98:M 09 Jun 2024 16:12:11.876 # Сервер инициализирован
98:M 09 Jun 2024 16:12:11.876 # ВНИМАНИЕ: Memory overcommit должен быть включен! Без него фоновое сохранение или репликация могут завершиться ошибкой при нехватке памяти. Если отключено, это также может вызывать ошибки даже при достаточном количестве памяти, см. https://github.com/jemalloc/jemalloc/issues/1328. Чтобы исправить эту проблему, добавьте 'vm.overcommit_memory = 1' в /etc/sysctl.conf, а затем перезагрузите систему или выполните команду 'sysctl vm.overcommit_memory=1', чтобы изменения вступили в силу.
98:M 09 Jun 2024 16:12:11.876 * Загрузка RDB, созданного версией 7.0.7
98:M 09 Jun 2024 16:12:11.876 * Возраст RDB 1325 секунд
98:M 09 Jun 2024 16:12:11.876 * Использование памяти RDB при создании 12.09 Мб
98:M 09 Jun 2024 16:12:12.044 * Загрузка RDB завершена, загружено ключей: 735, истекших ключей: 5.
98:M 09 Jun 2024 16:12:12.044 * БД загружена с диска: 0.168 секунд
98:M 09 Jun 2024 16:12:12.044 * Готов принимать подключения
I, [2024-06-09T16:12:21.839461 #1]  INFO -- : 
I, [2024-06-09T16:12:21.840480 #1]  INFO -- : > thpoff echo "thpoff установлен!"
I, [2024-06-09T16:12:21.845540 #1]  INFO -- : thpoff установлен!

I, [2024-06-09T16:12:21.846306 #1]  INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_SMTP_ADDRESS"] == "smtp.example.com"; puts "Прерывание! Почта не настроена!"; exit 1; end'
I, [2024-06-09T16:12:22.119797 #1]  INFO -- : 
I, [2024-06-09T16:12:22.121728 #1]  INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_HOSTNAME"] == "discourse.example.com"; puts "Прерывание! Домен не настроен!"; exit 1; end'
I, [2024-06-09T16:12:22.284181 #1]  INFO -- : 
I, [2024-06-09T16:12:22.285101 #1]  INFO -- : > /usr/local/bin/ruby -e 'if (ENV["DISCOURSE_CDN_URL"] || "")[0..1] == "//"; puts "Прерывание! CDN должен иметь указанный протокол. После исправления вам следует пересоздать все сообщения, чтобы исправить все записи."; exit 1; end'
I, [2024-06-09T16:12:22.445414 #1]  INFO -- : 
I, [2024-06-09T16:12:22.446452 #1]  INFO -- : > rm -f /etc/cron.d/anacron
I, [2024-06-09T16:12:22.450926 #1]  INFO -- : 
I, [2024-06-09T16:12:22.455762 #1]  INFO -- : Файл > /etc/cron.d/anacron  chmod:   chown: 
I, [2024-06-09T16:12:22.463698 #1]  INFO -- : Файл > /etc/runit/1.d/copy-env  chmod: +x  chown: 
I, [2024-06-09T16:12:22.471280 #1]  INFO -- : Файл > /etc/service/unicorn/run  chmod: +x  chown: 
I, [2024-06-09T16:12:22.478939 #1]  INFO -- : Файл > /etc/service/nginx/run  chmod: +x  chown: 
I, [2024-06-09T16:12:22.486584 #1]  INFO -- : Файл > /etc/runit/3.d/01-nginx  chmod: +x  chown: 
I, [2024-06-09T16:12:22.494456 #1]  INFO -- : Файл > /etc/runit/3.d/02-unicorn  chmod: +x  chown: 
I, [2024-06-09T16:12:22.495122 #1]  INFO -- : Замена # postgres на if [ -f /root/install_postgres ]; then
  /root/install_postgres
  rm /root/install_postgres
fi
sv start postgres || exit 1
 в /etc/service/unicorn/run
I, [2024-06-09T16:12:22.498080 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git reset --hard
Обновление файлов:  14% (4891/34508)
Обновление файлов:  15% (5177/34508)
Обновление файлов:  16% (5522/34508)
Обновление файлов:  17% (5867/34508)
Обновление файлов:  18% (6212/34508)
Обновление файлов:  19% (6557/34508)
Обновление файлов:  20% (6902/34508)
Обновление файлов:  20% (6928/34508)
Обновление файлов:  21% (7247/34508)
Обновление файлов:  22% (7592/34508)
Обновление файлов:  23% (7937/34508)
Обновление файлов:  24% (8282/34508)
Обновление файлов:  25% (8627/34508)
Обновление файлов:  26% (8973/34508)
Обновление файлов:  26% (9238/34508)
Обновление файлов:  27% (9318/34508)
Обновление файлов:  28% (9663/34508)
Обновление файлов:  29% (10008/34508)
Обновление файлов:  30% (10353/34508)
Обновление файлов:  31% (10698/34508)
Обновление файлов:  32% (11043/34508)
Обновление файлов:  33% (11388/34508)
Обновление файлов:  34% (11733/34508)
Обновление файлов:  34% (11972/34508)
Обновление файлов:  35% (12078/34508)
Обновление файлов:  36% (12423/34508)
Обновление файлов:  37% (12768/34508)
Обновление файлов:  38% (13114/34508)
Обновление файлов:  39% (13459/34508)
Обновление файлов:  40% (13804/34508)
Обновление файлов:  40% (14132/34508)
Обновление файлов:  41% (14149/34508)
Обновление файлов:  42% (14494/34508)
Обновление файлов:  43% (14839/34508)
Обновление файлов:  44% (15184/34508)
Обновление файлов:  45% (15529/34508)
Обновление файлов:  46% (15874/34508)
Обновление файлов:  47% (16219/34508)
Обновление файлов:  48% (16564/34508)
Обновление файлов:  49% (16909/34508)
Обновление файлов:  49% (16929/34508)
Обновление файлов:  50% (17254/34508)
Обновление файлов:  51% (17600/34508)
Обновление файлов:  52% (17945/34508)
Обновление файлов:  53% (18290/34508)
Обновление файлов:  54% (18635/34508)
Обновление файлов:  54% (18896/34508)
Обновление файлов:  55% (18980/34508)
Обновление файлов:  56% (19325/34508)
Обновление файлов:  57% (19670/34508)
Обновление файлов:  58% (20015/34508)
Обновление файлов:  59% (20360/34508)
Обновление файлов:  60% (20705/34508)
Обновление файлов:  60% (20776/34508)
Обновление файлов:  61% (21050/34508)
Обновление файлов:  62% (21395/34508)
Обновление файлов:  63% (21741/34508)
Обновление файлов:  64% (22086/34508)
Обновление файлов:  65% (22431/34508)
Обновление файлов:  66% (22776/34508)
Обновление файлов:  66% (22839/34508)
Обновление файлов:  67% (23121/34508)
Обновление файлов:  68% (23466/34508)
Обновление файлов:  69% (23811/34508)
Обновление файлов:  70% (24156/34508)
Обновление файлов:  71% (24501/34508)
Обновление файлов:  72% (24846/34508)
Обновление файлов:  73% (25191/34508)
Обновление файлов:  74% (25536/34508)
Обновление файлов:  75% (25881/34508)
Обновление файлов:  76% (26227/34508)
Обновление файлов:  77% (26572/34508)
Обновление файлов:  77% (26670/34508)
Обновление файлов:  78% (26917/34508)
Обновление файлов:  79% (27262/34508)
Обновление файлов:  80% (27607/34508)
Обновление файлов:  81% (27952/34508)
Обновление файлов:  82% (28297/34508)
Обновление файлов:  83% (28642/34508)
Обновление файлов:  84% (28987/34508)
Обновление файлов:  85% (29332/34508)
Обновление файлов:  86% (29677/34508)
Обновление файлов:  87% (30022/34508)
Обновление файлов:  87% (30250/34508)
Обновление файлов:  88% (30368/34508)
Обновление файлов:  89% (30713/34508)
Обновление файлов:  90% (31058/34508)
Обновление файлов:  91% (31403/34508)
Обновление файлов:  92% (31748/34508)
Обновление файлов:  93% (32093/34508)
Обновление файлов:  94% (32438/34508)
Обновление файлов:  95% (32783/34508)
Обновление файлов:  95% (32902/34508)
Обновление файлов:  96% (33128/34508)
Обновление файлов:  97% (33473/34508)
Обновление файлов:  98% (33818/34508)
Обновление файлов:  98% (34027/34508)
Обновление файлов:  99% (34163/34508)
Обновление файлов: 100% (34508/34508)
Обновление файлов: 100% (34508/34508), готово.
I, [2024-06-09T16:12:36.697834 #1]  INFO -- : HEAD теперь указывает на 62b1b69e8 UX: ограничить ширину транскриптов чата в сообщениях (#27288)

I, [2024-06-09T16:12:36.698263 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git clean -f
I, [2024-06-09T16:12:37.144203 #1]  INFO -- : 
I, [2024-06-09T16:12:37.145189 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse bash -c '
  set -o errexit
  if [ $(git rev-parse --is-shallow-repository) == "true" ]; then
      git remote set-branches --add origin main
      git remote set-branches origin tests-passed
      git fetch --depth 1 origin tests-passed
  else
      git fetch --tags --prune-tags --prune --force origin
  fi
'
From https://github.com/discourse/discourse
 - [удалено]             (none)     -> origin/add_filter_webhook_events_by_status
 - [удалено]             (none)     -> origin/add_lifecycle_rule_for_inventories
 - [удалено]             (none)     -> origin/application-route-actions
 - [удалено]             (none)     -> origin/avoid_unformatted_logs
 - [удалено]             (none)     -> origin/dependabot/bundler/rails_failover-2.1.0
 - [удалено]             (none)     -> origin/dev/ember-58-upgrade-playground
 - [удалено]             (none)     -> origin/discourse-route-actions
 - [удалено]             (none)     -> origin/discourse-url-native-class
 - [удалено]             (none)     -> origin/fix-group-chat-member-count
 - [удалено]             (none)     -> origin/ghost-button
 - [удалено]             (none)     -> origin/issue/bulk-action-pm-fixes
 - [удалено]             (none)     -> origin/migrations-tooling/converter
 - [удалено]             (none)     -> origin/permalinks
 - [удалено]             (none)     -> origin/route-native-class
 - [удалено]             (none)     -> origin/search-result-consistency
 - [удалено]             (none)     -> origin/support_alternate_bucket_s3_inventory
 - [удалено]             (none)     -> origin/user-posts-stream-native-class
 - [удалено]             (none)     -> origin/ux-account-disclaimer
   62b1b69e8..1fbc1cd32  main                    -> origin/main
 * [новая ветка]          0-a-fix-perf-watched-words -> origin/0-a-fix-perf-watched-words
 * [новая ветка]          0-a-skf-gjs             -> origin/0-a-skf-gjs
 * [новая ветка]          add_mechanism_to_redeliver_all_webhook_events -> origin/add_mechanism_to_redeliver_all_webhook_events
   1dcc6d608..da719ba7e  categories-modal-fix    -> origin/categories-modal-fix
 * [новая ветка]          chat-drawer-settings-styling -> origin/chat-drawer-settings-styling
 * [новая ветка]          dependabot/bundler/libv8-node-21.7.2.0 -> origin/dependabot/bundler/libv8-node-21.7.2.0
 * [новая ветка]          dependabot/bundler/oauth2-2.0.9 -> origin/dependabot/bundler/oauth2-2.0.9
 * [новая ветка]          dependabot/bundler/omniauth-2.1.2 -> origin/dependabot/bundler/omniauth-2.1.2
 * [новая ветка]          dependabot/bundler/omniauth-google-oauth2-1.1.2 -> origin/dependabot/bundler/omniauth-google-oauth2-1.1.2
 + 01982d4eb...58a828d0b dependabot/bundler/sqlite3-2.0.2 -> origin/dependabot/bundler/sqlite3-2.0.2  (принудительное обновление)
 * [новая ветка]          dev/ember-source-5.9.0-upgrade -> origin/dev/ember-source-5.9.0-upgrade
 + 07c56ec24...bbc178d8a dev/rfc-value-modifier-plugin-api -> origin/dev/rfc-value-modifier-plugin-api  (принудительное обновление)
 * [новая ветка]          feature/requires-confirmation-site-settings -> origin/feature/requires-confirmation-site-settings
 + fc63df2f0...077576634 feature/user-fields-required-for-existing-users-2 -> origin/feature/user-fields-required-for-existing-users-2  (принудительное обновление)
 * [новая ветка]          fix-password-reset-security-key -> origin/fix-password-reset-security-key
   b3d6801e8..a5d017f39  formtoolkit             -> origin/formtoolkit
 * [новая ветка]          grant-admin-fetch-user  -> origin/grant-admin-fetch-user
 * [новая ветка]          html_to_markdown        -> origin/html_to_markdown
 * [новая ветка]          jjaffeux-otp-validation -> origin/jjaffeux-otp-validation
 + b2b6b4468...07d2cfab5 loic-update-to-rails-7.1 -> origin/loic-update-to-rails-7.1  (принудительное обновление)
 * [новая ветка]          modify-class-native-syntax -> origin/modify-class-native-syntax
 * [новая ветка]          mt/converter            -> origin/mt/converter
 * [новая ветка]          optimize-chat-email-notification -> origin/optimize-chat-email-notification
 * [новая ветка]          remove-summarization    -> origin/remove-summarization
   5558028f8..a721e8fa4  stable                  -> origin/stable
 * [новая ветка]          support_s3_inventory_bucket -> origin/support_s3_inventory_bucket
   62b1b69e8..1fbc1cd32  tests-passed            -> origin/tests-passed
I, [2024-06-09T16:12:38.531554 #1]  INFO -- : 
I, [2024-06-09T16:12:38.532260 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse bash -c '
  set -o errexit
  if [[ $(git symbolic-ref --short HEAD) == tests-passed ]] ; then
      git pull
  else
      git -c advice.detachedHead=false checkout tests-passed
  fi
'
Переключено на новую ветку 'tests-passed'
I, [2024-06-09T16:12:45.262813 #1]  INFO -- : Ветка 'tests-passed' настроена для отслеживания удаленной ветки 'tests-passed' от 'origin'.

I, [2024-06-09T16:12:45.263776 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git config user.discourse-version tests-passed
I, [2024-06-09T16:12:45.288928 #1]  INFO -- : 
I, [2024-06-09T16:12:45.289152 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp
I, [2024-06-09T16:12:45.295445 #1]  INFO -- : 
I, [2024-06-09T16:12:45.295633 #1]  INFO -- : > cd /var/www/discourse && chown discourse:www-data tmp
I, [2024-06-09T16:12:45.303349 #1]  INFO -- : 
I, [2024-06-09T16:12:45.303522 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/pids
I, [2024-06-09T16:12:45.307132 #1]  INFO -- : 
I, [2024-06-09T16:12:45.307269 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/sockets
I, [2024-06-09T16:12:45.310989 #1]  INFO -- : 
I, [2024-06-09T16:12:45.311127 #1]  INFO -- : > cd /var/www/discourse && touch tmp/.gitkeep
I, [2024-06-09T16:12:45.318838 #1]  INFO -- : 
I, [2024-06-09T16:12:45.319063 #1]  INFO -- : > cd /var/www/discourse && mkdir -p                    /shared/log/rails
I, [2024-06-09T16:12:45.322752 #1]  INFO -- : 
I, [2024-06-09T16:12:45.322916 #1]  INFO -- : > cd /var/www/discourse && bash -c "touch -a           /shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.log"
I, [2024-06-09T16:12:45.399482 #1]  INFO -- : 
I, [2024-06-09T16:12:45.399725 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.log /var/www/discourse/log"
I, [2024-06-09T16:12:45.406081 #1]  INFO -- : 
I, [2024-06-09T16:12:45.406284 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/{uploads,backups}"
I, [2024-06-09T16:12:45.444609 #1]  INFO -- : 
I, [2024-06-09T16:12:45.444839 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/{uploads,backups} /var/www/discourse/public"
I, [2024-06-09T16:12:45.450581 #1]  INFO -- : 
I, [2024-06-09T16:12:45.450759 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/tmp/{backups,restores}"
I, [2024-06-09T16:12:45.464585 #1]  INFO -- : 
I, [2024-06-09T16:12:45.464759 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/tmp/{backups,restores} /var/www/discourse/tmp"
I, [2024-06-09T16:12:45.470374 #1]  INFO -- : 
I, [2024-06-09T16:12:45.470550 #1]  INFO -- : > cd /var/www/discourse && chown -R discourse:www-data /shared/log/rails /shared/uploads /shared/backups /shared/tmp
I, [2024-06-09T16:12:45.481346 #1]  INFO -- : 
I, [2024-06-09T16:12:45.481527 #1]  INFO -- : > cd /var/www/discourse && [ ! -d public/plugins ] || find public/plugins/ -maxdepth 1 -xtype l -delete
I, [2024-06-09T16:12:45.483755 #1]  INFO -- : 
I, [2024-06-09T16:12:45.484310 #1]  INFO -- : Замена # redis на sv start redis || exit 1 в /etc/service/unicorn/run
I, [2024-06-09T16:12:45.494687 #1]  INFO -- : > cd /var/www/discourse/plugins && git clone https://github.com/discourse/docker_manager.git
Клонирование в 'docker_manager'...
I, [2024-06-09T16:12:48.008281 #1]  INFO -- : 
I, [2024-06-09T16:12:48.008631 #1]  INFO -- : > cd /var/www/discourse/plugins && git clone https://github.com/discourse/discourse-reactions.git
Клонирование в 'discourse-reactions'...
I, [2024-06-09T16:12:49.185007 #1]  INFO -- : 
I, [2024-06-09T16:12:49.185644 #1]  INFO -- : > cp /var/www/discourse/config/nginx.sample.conf /etc/nginx/conf.d/discourse.conf
I, [2024-06-09T16:12:49.191273 #1]  INFO -- : 
I, [2024-06-09T16:12:49.191729 #1]  INFO -- : > rm /etc/nginx/sites-enabled/default
I, [2024-06-09T16:12:49.196547 #1]  INFO -- : 
I, [2024-06-09T16:12:49.198005 #1]  INFO -- : > mkdir -p /var/nginx/cache
I, [2024-06-09T16:12:49.209868 #1]  INFO -- : 
I, [2024-06-09T16:12:49.210779 #1]  INFO -- : Замена pid /run/nginx.pid; на daemon off; в /etc/nginx/nginx.conf
I, [2024-06-09T16:12:49.213114 #1]  INFO -- : Замена (?m-ix:upstream[^\}]+\}) на upstream discourse { server 127.0.0.1:3000; } в /etc/nginx/conf.d/discourse.conf
I, [2024-06-09T16:12:49.220203 #1]  INFO -- : Замена (?-mix:server_name.+$) на server_name _ ; в /etc/nginx/conf.d/discourse.conf
I, [2024-06-09T16:12:49.221042 #1]  INFO -- : Замена (?-mix:client_max_body_size.+$) на client_max_body_size $upload_size ; в /etc/nginx/conf.d/discourse.conf
I, [2024-06-09T16:12:49.223101 #1]  INFO -- : Замена (?-mix:worker_connections.+$) на worker_connections $nginx_worker_connections ; в /etc/nginx/nginx.conf
I, [2024-06-09T16:12:49.223941 #1]  INFO -- : > echo "настройка веб-сервера завершена"
I, [2024-06-09T16:12:49.227370 #1]  INFO -- : настройка веб-сервера завершена

I, [2024-06-09T16:12:49.229187 #1]  INFO -- : > cd /var/www/discourse && gem install bundler --conservative -v $(awk '/BUNDLED WITH/ { getline; gsub(/ /,""); print $0 }' Gemfile.lock)
I, [2024-06-09T16:12:50.788388 #1]  INFO -- : 
I, [2024-06-09T16:12:50.789223 #1]  INFO -- : > cd /var/www/discourse && find /var/www/discourse ! -user discourse -exec chown discourse {} \+
I, [2024-06-09T16:12:55.377356 #1]  INFO -- : 
I, [2024-06-09T16:12:55.378662 #1]  INFO -- : > cd /var/www/discourse && if [ "tests-passed" != "tests-passed" ]; then
  rm -rf app/assets/javascripts/node_modules
fi
I, [2024-06-09T16:12:55.381620 #1]  INFO -- : 
I, [2024-06-09T16:12:55.381822 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'yarn install --frozen-lockfile && yarn cache clean'
warning Resolution field "unset-value@2.0.1" is incompatible with requested version "unset-value@^1.0.0"
error Error: https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.1.tgz: ESOCKETTIMEDOUT
    at ClientRequest.<anonymous> (/usr/share/yarn/lib/cli.js:142037:19)
    at Object.onceWrapper (node:events:631:28)
    at ClientRequest.emit (node:events:517:28)
    at TLSSocket.emitRequestTimeout (node:_http_client:847:9)
    at Object.onceWrapper (node:events:631:28)
    at TLSSocket.emit (node:events:529:35)
    at Socket._onTimeout (node:net:598:8)
    at listOnTimeout (node:internal/timers:569:17)
    at process.processTimers (node:internal/timers:512:7)
I, [2024-06-09T16:19:28.375991 #1]  INFO -- : yarn install v1.22.22
[1/5] Проверка package.json...
[2/5] Разрешение пакетов...
[3/5] Загрузка пакетов...
info Похоже, возникли проблемы с сетевым подключением. Повторная попытка...
info Похоже, возникли проблемы с сетевым подключением. Повторная попытка...
info Похоже, возникли проблемы с сетевым подключением. Повторная попытка...
info Похоже, возникли проблемы с сетевым подключением. Повторная попытка...
info Похоже, возникли проблемы с сетевым подключением. Повторная попытка...
info Похоже, возникли проблемы с сетевым подключением. Повторная попытка...
info Похоже, возникли проблемы с сетевым подключением. Повторная попытка...
info Похоже, возникли проблемы с сетевым подключением. Повторная попытка...
info Посетите https://yarnpkg.com/en/docs/cli/install для ознакомления с документацией по этой команде.
info Похоже, возникли проблемы с сетевым подключением. Повторная попытка...

I, [2024-06-09T16:19:28.385028 #1]  INFO -- : Завершение асинхронных процессов
I, [2024-06-09T16:19:28.385197 #1]  INFO -- : Отправка сигнала INT для HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main pid: 36
I, [2024-06-09T16:19:28.386733 #1]  INFO -- : Отправка сигнала TERM для exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 98
2024-06-09 16:19:28.387 UTC [36] LOG:  получен запрос на быстрое завершение работы
98:signal-handler (1717949968) Получен сигнал SIGTERM, планирование завершения...
2024-06-09 16:19:28.398 UTC [36] LOG:  прерывание всех активных транзакций
2024-06-09 16:19:28.407 UTC [36] LOG:  фоновый рабочий процесс "logical replication launcher" (PID 51) завершился с кодом 1
98:M 09 Jun 2024 16:19:28.419 # Пользователь запросил завершение...
98:M 09 Jun 2024 16:19:28.419 * Сохранение финального снимка RDB перед выходом.
2024-06-09 16:19:28.434 UTC [46] LOG:  завершение работы
2024-06-09 16:19:28.598 UTC [36] LOG:  система баз данных остановлена
98:M 09 Jun 2024 16:19:28.638 * БД сохранена на диске
98:M 09 Jun 2024 16:19:28.638 # Redis готов к выходу, пока-пока...


FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'yarn install --frozen-lockfile && yarn cache clean' завершился с кодом возврата #<Process::Status: pid 274 exit 1>
Место сбоя: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
Выполнение команды завершилось ошибкой с параметрами {"cd"=>"$home", "hook"=>"yarn", "cmd"=>["if [ \"$version\" != \"tests-passed\" ]; then\n  rm -rf app/assets/javascripts/node_modules\nfi", "su discourse -c 'yarn install --frozen-lockfile && yarn cache clean'"]}
Инициализация завершилась с кодом выхода 1
** СБОЙ ИНИЦИАЛИЗАЦИИ ** прокрутите вверх и поищите сообщения об ошибках, их может быть несколько.
./discourse-doctor может помочь в диагностике проблемы.
511fc8465aa7cf3613e267d1c6eafeaf53580f04c9b6625e7bc02ea35bb5b6a8
==================== КОНЕЦ ЖУРНАЛА ПЕРЕСОБРАНИЯ ====================
Не удалось пересобрать приложение.

Проверка доменного имени . . .

Соединение с форумом успешно.
Возможно, следует удалить любые нестандартные плагины и пересобрать приложение.
Попытка перезапуска существующего контейнера. . . 
Обнаружена архитектура x86_64.

Запуск существующего контейнера
+ /usr/bin/docker start app
app
Контейнер перезапущен.


==================== ПЛАГИНЫ ====================
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-reactions.git

Нестандартные плагины не обнаружены.

См. официальный список по адресу https://github.com/discourse/discourse/blob/main/lib/plugin/metadata.rb.

========================================
Версия Discourse: НЕ НАЙДЕНА
Версия Discourse на localhost: НЕ НАЙДЕНА


==================== ИНФОРМАЦИЯ О ПАМЯТИ ====================
ОС: Linux
ОЗУ (МБ): 4101

               всего        использовано        свободно      совместно  buff/cache   доступно
Память:            3911         276        1889           1        1746        3339
Своп:              0           0           0

==================== ПРОВЕРКА МЕСТА НА ДИСКЕ ====================
---------- Место на диске ОС ----------
Файловая система      Размер  Использовано  Доступно  Использовано%  Точка монтирования
/dev/vda1        78G   15G   63G  19% /

==================== ИНФОРМАЦИЯ О ДИСКЕ ====================
Диск /dev/loop0: 63.95 MiB, 67051520 байт, 130960 секторов
Единицы: секторов по 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 512 байт
Размер ввода-вывода (минимальный/оптимальный): 512 байт / 512 байт


Диск /dev/loop1: 63.95 MiB, 67051520 байт, 130960 секторов
Единицы: секторов по 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 512 байт
Размер ввода-вывода (минимальный/оптимальный): 512 байт / 512 байт


Диск /dev/loop2: 87 MiB, 91230208 байт, 178184 сектора
Единицы: секторов по 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 512 байт
Размер ввода-вывода (минимальный/оптимальный): 512 байт / 512 байт


Диск /dev/loop3: 87.03 MiB, 91258880 байт, 178240 секторов
Единицы: секторов по 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 512 байт
Размер ввода-вывода (минимальный/оптимальный): 512 байт / 512 байт


Диск /dev/loop4: 38.73 MiB, 40615936 байт, 79328 секторов
Единицы: секторов по 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 512 байт
Размер ввода-вывода (минимальный/оптимальный): 512 байт / 512 байт


Диск /dev/loop5: 38.83 MiB, 40714240 байт, 79520 секторов
Единицы: секторов по 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 512 байт
Размер ввода-вывода (минимальный/оптимальный): 512 байт / 512 байт


Диск /dev/vda: 80 GiB, 85899345920 байт, 167772160 секторов
Единицы: секторов по 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 512 байт
Размер ввода-вывода (минимальный/оптимальный): 512 байт / 512 байт
Тип таблицы разделов: gpt
Идентификатор диска: 92CE6D7D-ACB9-4BD1-B74B-296DC5901CB3

Устройство      Начало       Конец   Секторы  Размер Тип
/dev/vda1  227328 167772126 167544799 79.9G Файловая система Linux
/dev/vda14   2048     10239      8192    4M Загрузочный раздел BIOS
/dev/vda15  10240    227327    217088  106M Системный раздел EFI

Записи таблицы разделов не идут в порядке следования на диске.

==================== КОНЕЦ ИНФОРМАЦИИ О ДИСКЕ ====================

==================== ТЕСТ ПОЧТЫ ====================
Для надежного теста получите адрес на http://www.mail-tester.com/
Тест почты пропущен.

==================== ГОТОВО! ====================

Полагаю, это ваша критическая ошибка. Может ли ваша машина успешно получить доступ к https://registry.yarnpkg.com?

curl -I -L https://registry.yarnpkg.com
HTTP/2 200 
date: Sun, 09 Jun 2024 16:38:58 GMT
content-type: application/json
cf-ray: 89128e1899ab8b47-TPA
cf-cache-status: DYNAMIC
npm-notice: Эта конечная точка устарела. Используйте вместо неё https://replicate.npmjs.com.
server: cloudflare

Странно. Скорость диска на этой машине достаточно высокая? Ранее возникали проблемы с медленными дисками:

Форум снова работает после запуска discourse doctor, но плагин всё ещё не установлен.

Я проверил обновления в панели администратора, и там указано, что доступна новая версия docker manager и discourse.

Стоит ли обновляться или сначала попытаться решить эту проблему в текущем состоянии?

Должно быть, я использую высококлассного провайдера VPS с 2 ядрами CPU, 4 ГБ ОЗУ и SSD на 80 ГБ.

Discourse-doctor перезапустит приложение (то есть предыдущую версию перед неудачной пересборкой, в которой отсутствовали реакции).

Для установки плагина вам потребуется успешно выполнить пересборку. Первоначальное обновление через интерфейс не имеет значения, так как пересборка через командную строку также обновит ваш сайт аналогичным образом.

Что рекомендуется сделать на данном этапе? Я привёл выше ошибку от Discourse Doctor.

Это вечный вопрос. :slight_smile: Пересборки могут завершаться неудачей по разным причинам в зависимости от настройки и конфигурации сайта, и некоторые ошибки более узнаваемы для одних пользователей, чем для других.

В данном случае я не уверен. Просто для проверки: у вас стандартная установка?

Да, я следовал стандартной инструкции по установке, и форум работал без проблем последние несколько дней после установки. Я не пытался установить какие-либо другие плагины, кроме плагина реакций.

Похоже, что решения этой проблемы не существует.

Я установил Discourse несколько дней назад по стандартной инструкции, и всё работало нормально, но, судя по всему, я не могу выполнить пересборку или установить плагины.

Если решения нет, какова лучшая практика? Сделать резервную копию моего экземпляра Discourse и переустановить Discourse с нуля?

И ещё один, несколько связанный вопрос. Я выполнил стандартную установку, и она установила бета-версию Discourse. Не было бы лучше, если бы стандартная установка устанавливала стабильную версию вместо бета-версии, или я что-то упускаю?

Какая бета-версия? Большинство, как я полагаю, используют “Tests-passed”, так как она более актуальна и в целом достаточно стабильна.

У меня отображается 3.3.0.beta3-dev

Я не понимаю, что это значит. Можете пояснить?

Я не хочу, чтобы моя основная проблема отвлекалась на вторую часть моего вопроса. Я всё ещё не могу установить плагины или пересобрать приложение.

Существует три ветки. Версия, которую вы опубликовали, — «Tests-passed». Не уверен, что может вызывать проблему с вашим XP. Я использую ту же версию.