O Discourse parou de funcionar de repente

Olá,

Meu Discourse parou de funcionar subitamente.

Eu estava editando algumas postagens esta manhã, mas há cerca de duas horas, o Discourse desapareceu. Em outras palavras, ele não está acessível.

Ontem, adicionei um registro TXT ao DNS para verificar o que o Google Search Console solicita. Isso provavelmente não deve ter efeito. Não mudei mais nada!

Também não fiz alterações no meu NGINX Proxy Manager.

Tentei reconstruir o aplicativo, mas sem sucesso. O log está no final deste texto.

Poderia me aconselhar sobre como corrigir isso? Não sei o que fazer. Obrigado.


root@vmi1695712:/var/discourse# ./launcher rebuild app
x86_64 arch detected.
Ensuring launcher is up to date
Fetching origin
Launcher is up-to-date
Stopping old container
+ /usr/bin/docker stop -t 600 app
app
2.0.20240602-0023: Pulling from discourse/base
Digest: sha256:5e0c30da851a00e824a58b033d59b8f3dd840b513a7694a7a5d0674285c0ee3c
Status: Image is up to date for 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-07-04T13:38:50.541714 #1]  INFO -- : Reading from stdin
I, [2024-07-04T13:38:50.560922 #1]  INFO -- : File > /etc/service/postgres/run  chmod: +x  chown:
I, [2024-07-04T13:38:50.569920 #1]  INFO -- : File > /etc/service/postgres/log/run  chmod: +x  chown:
I, [2024-07-04T13:38:50.639464 #1]  INFO -- : File > /etc/runit/3.d/99-postgres  chmod: +x  chown:
I, [2024-07-04T13:38:50.647493 #1]  INFO -- : File > /root/install_postgres  chmod: +x  chown:
I, [2024-07-04T13:38:50.657009 #1]  INFO -- : File > /root/upgrade_postgres  chmod: +x  chown:
I, [2024-07-04T13:38:50.662175 #1]  INFO -- : Replacing data_directory = '/var/lib/postgresql/13/main' with data_directory = '/shared/postgres_data' in /etc/postgresql/13/main/postgresql.conf
I, [2024-07-04T13:38:50.663544 #1]  INFO -- : Replacing (?-mix:#?listen_addresses *=.*) with listen_addresses = '*' in /etc/postgresql/13/main/postgresql.conf
I, [2024-07-04T13:38:50.663970 #1]  INFO -- : Replacing (?-mix:#?synchronous_commit *=.*) with synchronous_commit = $db_synchronous_commit in /etc/postgresql/13/main/postgresql.conf
I, [2024-07-04T13:38:50.664802 #1]  INFO -- : Replacing (?-mix:#?shared_buffers *=.*) with shared_buffers = $db_shared_buffers in /etc/postgresql/13/main/postgresql.conf
I, [2024-07-04T13:38:50.665410 #1]  INFO -- : Replacing (?-mix:#?work_mem *=.*) with work_mem = $db_work_mem in /etc/postgresql/13/main/postgresql.conf
I, [2024-07-04T13:38:50.665995 #1]  INFO -- : Replacing (?-mix:#?default_text_search_config *=.*) with default_text_search_config = '$db_default_text_search_config' in /etc/postgresql/13/main/postgresql.conf
I, [2024-07-04T13:38:50.666444 #1]  INFO -- : Replacing (?-mix:#?checkpoint_segments *=.*) with checkpoint_segments = $db_checkpoint_segments in /etc/postgresql/13/main/postgresql.conf
I, [2024-07-04T13:38:50.667277 #1]  INFO -- : Replacing (?-mix:#?logging_collector *=.*) with logging_collector = $db_logging_collector in /etc/postgresql/13/main/postgresql.conf
I, [2024-07-04T13:38:50.667726 #1]  INFO -- : Replacing (?-mix:#?log_min_duration_statement *=.*) with log_min_duration_statement = $db_log_min_duration_statement in /etc/postgresql/13/main/postgresql.conf
I, [2024-07-04T13:38:50.669744 #1]  INFO -- : Replacing (?-mix:^#local +replication +postgres +peer$) with local replication postgres  peer in /etc/postgresql/13/main/pg_hba.conf
I, [2024-07-04T13:38:50.670470 #1]  INFO -- : Replacing (?-mix:^host.*all.*all.*127.*$) with host all all 0.0.0.0/0 md5 in /etc/postgresql/13/main/pg_hba.conf
I, [2024-07-04T13:38:50.734826 #1]  INFO -- : Replacing (?-mix:^host.*all.*all.*::1\/128.*$) with host all all ::/0 md5 in /etc/postgresql/13/main/pg_hba.conf
I, [2024-07-04T13:38:50.735770 #1]  INFO -- : > [ -f /root/install_postgres ] && /root/install_postgres && rm -f /root/install_postgres
I, [2024-07-04T13:38:54.865947 #1]  INFO -- : Generating locales (this might take a while)...
Generation complete.

I, [2024-07-04T13:38:54.866404 #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-07-04T13:38:55.047164 #1]  INFO -- : File > /usr/local/bin/create_db  chmod: +x  chown:
I, [2024-07-04T13:38:55.060731 #1]  INFO -- : File > /var/lib/postgresql/take-database-backup  chmod: +x  chown: postgres:postgres
I, [2024-07-04T13:38:55.147051 #1]  INFO -- : File > /var/spool/cron/crontabs/postgres  chmod:   chown:
I, [2024-07-04T13:38:55.148314 #1]  INFO -- : > sleep 5
2024-07-04 13:38:55.452 UTC [35] LOG:  starting PostgreSQL 13.15 (Debian 13.15-1.pgdg110+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 10.2.1-6) 10.2.1 20210110, 64-bit
2024-07-04 13:38:55.453 UTC [35] LOG:  listening on IPv4 address "0.0.0.0", port 5432
2024-07-04 13:38:55.453 UTC [35] LOG:  listening on IPv6 address "::", port 5432
2024-07-04 13:38:55.462 UTC [35] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2024-07-04 13:38:55.554 UTC [44] LOG:  database system was shut down at 2024-07-04 13:37:27 UTC
2024-07-04 13:38:55.649 UTC [35] LOG:  database system is ready to accept connections
I, [2024-07-04T13:39:00.161334 #1]  INFO -- :
I, [2024-07-04T13:39:00.162068 #1]  INFO -- : > /usr/local/bin/create_db
2024-07-04 13:39:00.363 UTC [54] postgres@postgres ERROR:  database "discourse" already exists
2024-07-04 13:39:00.363 UTC [54] postgres@postgres STATEMENT:  CREATE DATABASE discourse;
createdb: error: database creation failed: ERROR:  database "discourse" already exists
2024-07-04 13:39:00.500 UTC [57] postgres@discourse ERROR:  role "discourse" already exists
2024-07-04 13:39:00.500 UTC [57] postgres@discourse STATEMENT:  create user discourse;
ERROR:  role "discourse" already exists
NOTICE:  extension "hstore" already exists, skipping
NOTICE:  extension "pg_trgm" already exists, skipping
NOTICE:  extension "vector" already exists, skipping
NOTICE:  extension "hstore" already exists, skipping
NOTICE:  extension "pg_trgm" already exists, skipping
NOTICE:  extension "vector" already exists, skipping
I, [2024-07-04T13:39:02.697895 #1]  INFO -- : GRANT
ALTER SCHEMA
CREATE EXTENSION
CREATE EXTENSION
CREATE EXTENSION
CREATE EXTENSION
CREATE EXTENSION
CREATE EXTENSION
UPDATE 0

I, [2024-07-04T13:39:02.699742 #1]  INFO -- : > echo postgres installed!
I, [2024-07-04T13:39:02.708219 #1]  INFO -- : postgres installed!

I, [2024-07-04T13:39:02.729734 #1]  INFO -- : File > /etc/service/redis/run  chmod: +x  chown:
I, [2024-07-04T13:39:02.797663 #1]  INFO -- : File > /etc/service/redis/log/run  chmod: +x  chown:
I, [2024-07-04T13:39:02.825472 #1]  INFO -- : File > /etc/runit/3.d/10-redis  chmod: +x  chown:
I, [2024-07-04T13:39:02.873773 #1]  INFO -- : Replacing daemonize yes with  in /etc/redis/redis.conf
I, [2024-07-04T13:39:02.875722 #1]  INFO -- : Replacing (?-mix:^pidfile.*$) with  in /etc/redis/redis.conf
I, [2024-07-04T13:39:02.876708 #1]  INFO -- : > install -d -m 0755 -o redis -g redis /shared/redis_data
I, [2024-07-04T13:39:02.889171 #1]  INFO -- :
I, [2024-07-04T13:39:02.890520 #1]  INFO -- : Replacing (?-mix:^logfile.*$) with logfile "" in /etc/redis/redis.conf
I, [2024-07-04T13:39:02.902744 #1]  INFO -- : Replacing (?-mix:^bind .*$) with  in /etc/redis/redis.conf
I, [2024-07-04T13:39:02.905419 #1]  INFO -- : Replacing (?-mix:^dir .*$) with dir /shared/redis_data in /etc/redis/redis.conf
I, [2024-07-04T13:39:02.905957 #1]  INFO -- : Replacing (?-mix:^protected-mode yes) with protected-mode no in /etc/redis/redis.conf
I, [2024-07-04T13:39:02.906493 #1]  INFO -- : Replacing # io-threads 4 with io-threads $redis_io_threads in /etc/redis/redis.conf
I, [2024-07-04T13:39:02.909850 #1]  INFO -- : > echo redis installed
I, [2024-07-04T13:39:02.974306 #1]  INFO -- : redis installed

I, [2024-07-04T13:39:02.975084 #1]  INFO -- : > cat /etc/redis/redis.conf | grep logfile
I, [2024-07-04T13:39:03.004950 #1]  INFO -- : logfile ""

I, [2024-07-04T13:39:03.005298 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2024-07-04T13:39:03.010638 #1]  INFO -- : > sleep 10
97:C 04 Jul 2024 13:39:03.110 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
97:C 04 Jul 2024 13:39:03.110 # Redis version=7.0.7, bits=64, commit=00000000, modified=0, pid=97, just started
97:C 04 Jul 2024 13:39:03.110 # Configuration loaded
97:M 04 Jul 2024 13:39:03.111 * monotonic clock: POSIX clock_gettime
97:M 04 Jul 2024 13:39:03.111 * Running mode=standalone, port=6379.
97:M 04 Jul 2024 13:39:03.112 # Server initialized
97:M 04 Jul 2024 13:39:03.112 # WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
97:M 04 Jul 2024 13:39:03.114 * Loading RDB produced by version 7.0.7
97:M 04 Jul 2024 13:39:03.114 * RDB age 99 seconds
97:M 04 Jul 2024 13:39:03.114 * RDB memory usage when created 19.56 Mb
97:M 04 Jul 2024 13:39:03.278 * Done loading RDB, keys loaded: 918, keys expired: 7.
97:M 04 Jul 2024 13:39:03.279 * DB loaded from disk: 0.165 seconds
97:M 04 Jul 2024 13:39:03.279 * Ready to accept connections
I, [2024-07-04T13:39:13.020261 #1]  INFO -- :
I, [2024-07-04T13:39:13.021592 #1]  INFO -- : > thpoff echo "thpoff is installed!"
I, [2024-07-04T13:39:13.038723 #1]  INFO -- : thpoff is installed!

I, [2024-07-04T13:39:13.039801 #1]  INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_SMTP_ADDRESS"] == "smtp.example.com"; puts "Aborting! Mail is not configured!"; exit 1; end'
I, [2024-07-04T13:39:13.328795 #1]  INFO -- :
I, [2024-07-04T13:39:13.329441 #1]  INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_HOSTNAME"] == "discourse.example.com"; puts "Aborting! Domain is not configured!"; exit 1; end'
I, [2024-07-04T13:39:13.723818 #1]  INFO -- :
I, [2024-07-04T13:39:13.724044 #1]  INFO -- : > /usr/local/bin/ruby -e 'if (ENV["DISCOURSE_CDN_URL"] || "")[0..1] == "//"; puts "Aborting! CDN must have a protocol specified. Once fixed you should rebake your posts now to correct all posts."; exit 1; end'
I, [2024-07-04T13:39:14.221328 #1]  INFO -- :
I, [2024-07-04T13:39:14.221855 #1]  INFO -- : > rm -f /etc/cron.d/anacron
I, [2024-07-04T13:39:14.226952 #1]  INFO -- :
I, [2024-07-04T13:39:14.232653 #1]  INFO -- : File > /etc/cron.d/anacron  chmod:   chown:
I, [2024-07-04T13:39:14.313293 #1]  INFO -- : File > /etc/runit/1.d/copy-env  chmod: +x  chown:
I, [2024-07-04T13:39:14.325373 #1]  INFO -- : File > /etc/service/unicorn/run  chmod: +x  chown:
I, [2024-07-04T13:39:14.341701 #1]  INFO -- : File > /etc/service/nginx/run  chmod: +x  chown:
I, [2024-07-04T13:39:14.429720 #1]  INFO -- : File > /etc/runit/3.d/01-nginx  chmod: +x  chown:
I, [2024-07-04T13:39:14.442944 #1]  INFO -- : File > /etc/runit/3.d/02-unicorn  chmod: +x  chown:
I, [2024-07-04T13:39:14.443716 #1]  INFO -- : Replacing # postgres with if [ -f /root/install_postgres ]; then
  /root/install_postgres
  rm /root/install_postgres
fi
sv start postgres || exit 1
 in /etc/service/unicorn/run
I, [2024-07-04T13:39:14.511433 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git reset --hard
Updating files: 100% (34508/34508), done.
I, [2024-07-04T13:39:31.789206 #1]  INFO -- : HEAD is now at 62b1b69e8 UX: constrain width of chat transcripts in posts (#27288)

I, [2024-07-04T13:39:31.792178 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git clean -f
I, [2024-07-04T13:39:32.598288 #1]  INFO -- :
I, [2024-07-04T13:39:32.598634 #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
 - [deleted]             (none)     -> origin/add_filter_webhook_events_by_status
 - [deleted]             (none)     -> origin/add_lifecycle_rule_for_inventories
 - [deleted]             (none)     -> origin/application-route-actions
 - [deleted]             (none)     -> origin/avoid_unformatted_logs
 - [deleted]             (none)     -> origin/categories-modal-fix
 - [deleted]             (none)     -> origin/decorator-transforms-take-2
 - [deleted]             (none)     -> origin/dependabot/bundler/rails_failover-2.1.0
 - [deleted]             (none)     -> origin/dependabot/bundler/sqlite3-2.0.2
 - [deleted]             (none)     -> origin/dev/ember-58-upgrade-playground
 - [deleted]             (none)     -> origin/dev/rfc-value-modifier-plugin-api
 - [deleted]             (none)     -> origin/dev/standalone-home-logo-contents-component
 - [deleted]             (none)     -> origin/discourse-route-actions
 - [deleted]             (none)     -> origin/discourse-url-native-class
 - [deleted]             (none)     -> origin/feature/user-fields-required-for-existing-users-2
 - [deleted]             (none)     -> origin/fix-bbcode-parser
 - [deleted]             (none)     -> origin/fix-group-chat-member-count
 - [deleted]             (none)     -> origin/ghost-button
 - [deleted]             (none)     -> origin/issue/bulk-action-pm-fixes
 - [deleted]             (none)     -> origin/loic-update-to-rails-7.1
 - [deleted]             (none)     -> origin/migrations-tooling/converter
 - [deleted]             (none)     -> origin/permalinks
 - [deleted]             (none)     -> origin/remove-disable-sidebar
 - [deleted]             (none)     -> origin/route-native-class
 - [deleted]             (none)     -> origin/search-result-consistency
 - [deleted]             (none)     -> origin/support_alternate_bucket_s3_inventory
 - [deleted]             (none)     -> origin/update-official-plugin-list
 - [deleted]             (none)     -> origin/user-posts-stream-native-class
 - [deleted]             (none)     -> origin/ux-account-disclaimer
 - [deleted]             (none)     -> origin/with-ancestor-ids
   62b1b69e8..0d608ceff  main                    -> origin/main
 * [new branch]          0-a-fix-high            -> origin/0-a-fix-high
 * [new branch]          add_mechanism_to_redeliver_all_webhook_events -> origin/add_mechanism_to_redeliver_all_webhook_events
 * [new branch]          add_mechanism_to_redeliver_all_webhook_events_wip -> origin/add_mechanism_to_redeliver_all_webhook_events_wip
 * [new branch]          better_logs             -> origin/better_logs
 * [new branch]          chat-empty-state        -> origin/chat-empty-state
 * [new branch]          chat-mobile-menu        -> origin/chat-mobile-menu
 + 098e99e83...bfdeae4f4 coco/generic-importer   -> origin/coco/generic-importer  (forced update)
 * [new branch]          dependabot/bundler/libv8-node-21.7.2.0 -> origin/dependabot/bundler/libv8-node-21.7.2.0
 * [new branch]          dependabot/bundler/oauth2-2.0.9 -> origin/dependabot/bundler/oauth2-2.0.9
 * [new branch]          dependabot/bundler/omniauth-2.1.2 -> origin/dependabot/bundler/omniauth-2.1.2
 * [new branch]          dependabot/bundler/omniauth-google-oauth2-1.1.2 -> origin/dependabot/bundler/omniauth-google-oauth2-1.1.2
 * [new branch]          detect-default-readonly -> origin/detect-default-readonly
 * [new branch]          dev-can-ignore-users    -> origin/dev-can-ignore-users
 * [new branch]          dev/add-behavior-transformers -> origin/dev/add-behavior-transformers
 * [new branch]          dev/ember-source-5.9.0-upgrade -> origin/dev/ember-source-5.9.0-upgrade
 * [new branch]          dev/untangle-admin-sidebar -> origin/dev/untangle-admin-sidebar
 * [new branch]          feature/absolute-number-in-poll -> origin/feature/absolute-number-in-poll
 * [new branch]          feature/private-github-onebox -> origin/feature/private-github-onebox
 * [new branch]          fix-ensure-post-and-topic-user-id-is-always-set -> origin/fix-ensure-post-and-topic-user-id-is-always-set
 * [new branch]          fix-password-reset-security-key -> origin/fix-password-reset-security-key
 * [new branch]          fix-unread-notifications-take-2 -> origin/fix-unread-notifications-take-2
 * [new branch]          fix/table-break-line    -> origin/fix/table-break-line
   b3d6801e8..2902da16e  formtoolkit             -> origin/formtoolkit
 * [new branch]          grant-admin-fetch-user  -> origin/grant-admin-fetch-user
 * [new branch]          issue/do-not-enforce-2fa-on-social-logins -> origin/issue/do-not-enforce-2fa-on-social-logins
 * [new branch]          issue/fix-user-field-enum-migrate -> origin/issue/fix-user-field-enum-migrate
 * [new branch]          issue/prevent-decimal-comma-integer-input-site-setting -> origin/issue/prevent-decimal-comma-integer-input-site-setting
 * [new branch]          jjaffeux-otp-validation -> origin/jjaffeux-otp-validation
 * [new branch]          loic-use-messageformat-gem -> origin/loic-use-messageformat-gem
 * [new branch]          mt/converter            -> origin/mt/converter
 * [new branch]          mt/uploads-command      -> origin/mt/uploads-command
 * [new branch]          prevent-header-cls      -> origin/prevent-header-cls
 * [new branch]          rails_7_1_upgrade       -> origin/rails_7_1_upgrade
 * [new branch]          show-primary-user-group-options-to-members -> origin/show-primary-user-group-options-to-members
   5558028f8..473248381  stable                  -> origin/stable
 * [new branch]          tag-span                -> origin/tag-span
   62b1b69e8..0d608ceff  tests-passed            -> origin/tests-passed
 t [tag update]          beta                    -> beta
 t [tag update]          latest-release          -> latest-release
 * [new tag]             v3.2.3                  -> v3.2.3
 * [new tag]             v3.3.0.beta3            -> v3.3.0.beta3
I, [2024-07-04T13:39:34.299514 #1]  INFO -- :
I, [2024-07-04T13:39:34.299788 #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
'
Switched to a new branch 'tests-passed'
I, [2024-07-04T13:39:41.631661 #1]  INFO -- : Branch 'tests-passed' set up to track remote branch 'tests-passed' from 'origin'.

I, [2024-07-04T13:39:41.632287 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git config user.discourse-version tests-passed
I, [2024-07-04T13:39:41.649903 #1]  INFO -- :
I, [2024-07-04T13:39:41.650148 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp
I, [2024-07-04T13:39:41.721358 #1]  INFO -- :
I, [2024-07-04T13:39:41.722593 #1]  INFO -- : > cd /var/www/discourse && chown discourse:www-data tmp
I, [2024-07-04T13:39:41.727871 #1]  INFO -- :
I, [2024-07-04T13:39:41.729003 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/pids
I, [2024-07-04T13:39:41.735635 #1]  INFO -- :
I, [2024-07-04T13:39:41.736747 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/sockets
I, [2024-07-04T13:39:41.742509 #1]  INFO -- :
I, [2024-07-04T13:39:41.743294 #1]  INFO -- : > cd /var/www/discourse && touch tmp/.gitkeep
I, [2024-07-04T13:39:41.749797 #1]  INFO -- :
I, [2024-07-04T13:39:41.750489 #1]  INFO -- : > cd /var/www/discourse && mkdir -p                    /shared/log/rails
I, [2024-07-04T13:39:41.821571 #1]  INFO -- :
I, [2024-07-04T13:39:41.822485 #1]  INFO -- : > cd /var/www/discourse && bash -c "touch -a           /shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.log"
I, [2024-07-04T13:39:41.832200 #1]  INFO -- :
I, [2024-07-04T13:39:41.832830 #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-07-04T13:39:41.840532 #1]  INFO -- :
I, [2024-07-04T13:39:41.841216 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/{uploads,backups}"
I, [2024-07-04T13:39:41.851218 #1]  INFO -- :
I, [2024-07-04T13:39:41.851816 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/{uploads,backups} /var/www/discourse/public"
I, [2024-07-04T13:39:41.925157 #1]  INFO -- :
I, [2024-07-04T13:39:41.925801 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/tmp/{backups,restores}"
I, [2024-07-04T13:39:41.935066 #1]  INFO -- :
I, [2024-07-04T13:39:41.935779 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/tmp/{backups,restores} /var/www/discourse/tmp"
I, [2024-07-04T13:39:41.943863 #1]  INFO -- :
I, [2024-07-04T13:39:41.944656 #1]  INFO -- : > cd /var/www/discourse && chown -R discourse:www-data /shared/log/rails /shared/uploads /shared/backups /shared/tmp
I, [2024-07-04T13:39:42.227885 #1]  INFO -- :
I, [2024-07-04T13:39:42.228719 #1]  INFO -- : > cd /var/www/discourse && [ ! -d public/plugins ] || find public/plugins/ -maxdepth 1 -xtype l -delete
I, [2024-07-04T13:39:42.231616 #1]  INFO -- :
I, [2024-07-04T13:39:42.232299 #1]  INFO -- : Replacing # redis with sv start redis || exit 1 in /etc/service/unicorn/run
I, [2024-07-04T13:39:42.233701 #1]  INFO -- : > cd /var/www/discourse/plugins && git clone https://github.com/discourse/docker_manager.git
Cloning into 'docker_manager'...
I, [2024-07-04T13:39:44.732799 #1]  INFO -- :
I, [2024-07-04T13:39:44.734253 #1]  INFO -- : > cp /var/www/discourse/config/nginx.sample.conf /etc/nginx/conf.d/discourse.conf
I, [2024-07-04T13:39:44.744794 #1]  INFO -- :
I, [2024-07-04T13:39:44.745634 #1]  INFO -- : > rm /etc/nginx/sites-enabled/default
I, [2024-07-04T13:39:44.830767 #1]  INFO -- :
I, [2024-07-04T13:39:44.831520 #1]  INFO -- : > mkdir -p /var/nginx/cache
I, [2024-07-04T13:39:44.834670 #1]  INFO -- :
I, [2024-07-04T13:39:44.838515 #1]  INFO -- : Replacing pid /run/nginx.pid; with daemon off; in /etc/nginx/nginx.conf
I, [2024-07-04T13:39:44.840309 #1]  INFO -- : Replacing (?m-ix:upstream[^\}]+\}) with upstream discourse { server 127.0.0.1:3000; } in /etc/nginx/conf.d/discourse.conf
I, [2024-07-04T13:39:44.841050 #1]  INFO -- : Replacing (?-mix:server_name.+$) with server_name _ ; in /etc/nginx/conf.d/discourse.conf
I, [2024-07-04T13:39:44.841683 #1]  INFO -- : Replacing (?-mix:client_max_body_size.+$) with client_max_body_size $upload_size ; in /etc/nginx/conf.d/discourse.conf
I, [2024-07-04T13:39:44.842894 #1]  INFO -- : Replacing (?-mix:worker_connections.+$) with worker_connections $nginx_worker_connections ; in /etc/nginx/nginx.conf
I, [2024-07-04T13:39:44.931340 #1]  INFO -- : > echo "done configuring web"
I, [2024-07-04T13:39:44.935430 #1]  INFO -- : done configuring web

I, [2024-07-04T13:39:44.936120 #1]  INFO -- : > cd /var/www/discourse && gem install bundler --conservative -v $(awk '/BUNDLED WITH/ { getline; gsub(/ /,""); print $0 }' Gemfile.lock)
I, [2024-07-04T13:39:45.835727 #1]  INFO -- :
I, [2024-07-04T13:39:45.836034 #1]  INFO -- : > cd /var/www/discourse && find /var/www/discourse ! -user discourse -exec chown discourse {} \+
I, [2024-07-04T13:40:03.434005 #1]  INFO -- :
I, [2024-07-04T13:40:03.434989 #1]  INFO -- : > cd /var/www/discourse && if [ "tests-passed" != "tests-passed" ]; then
  rm -rf app/assets/javascripts/node_modules
fi
I, [2024-07-04T13:40:03.442966 #1]  INFO -- :
I, [2024-07-04T13:40:03.443147 #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/date-fns/-/date-fns-2.30.0.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-07-04T13:44:53.619485 #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 Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

I, [2024-07-04T13:44:53.623961 #1]  INFO -- : Terminating async processes
I, [2024-07-04T13:44:53.624457 #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: 35
I, [2024-07-04T13:44:53.624901 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 97
2024-07-04 13:44:53.625 UTC [35] LOG:  received fast shutdown request
97:signal-handler (1720100693) Received SIGTERM scheduling shutdown...
2024-07-04 13:44:53.632 UTC [35] LOG:  aborting any active transactions
2024-07-04 13:44:53.642 UTC [35] LOG:  background worker "logical replication launcher" (PID 50) exited with exit code 1
97:M 04 Jul 2024 13:44:53.644 # User requested shutdown...
97:M 04 Jul 2024 13:44:53.644 * Saving the final RDB snapshot before exiting.
2024-07-04 13:44:53.650 UTC [45] LOG:  shutting down
2024-07-04 13:44:53.747 UTC [35] LOG:  database system is shut down
97:M 04 Jul 2024 13:44:53.932 * DB saved on disk
97:M 04 Jul 2024 13:44:53.932 # 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 268 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.
0ad323769e87ce77787965163c1889999c044d6dce2cb925cf43f92475148a14
root@vmi1695712:/var/discourse# ^C

e

sugerem que sua VM pode estar experimentando alguns problemas de conectividade. Pode ser transitório. O que acontece se você executar ./launcher rebuild app novamente?

A reconstrução falhou novamente. Mesmos erros.

É estranho porque estou executando WordPress, Nginx proxy manager e Portainer no mesmo servidor, e tudo funciona.

Não é estranho porque nenhum desses serviços tem a ver com o discourse.
Você precisará fornecer um log completo da compilação com falha e mais informações sobre sua configuração para obter mais ajuda aqui.

Ok, sem problemas.

A que log você se refere? Como posso obtê-lo?

Que outras informações você precisa?

Aliás, obrigado pela ajuda. Estou realmente perdido agora.

Use ./discourse-doctor, ele gerará um arquivo que você pode compartilhar.

Segundo, se você puder compartilhar um app.yml redigido, eu ou alguém aqui poderá ver se há alguns problemas óbvios, como plugins incompatíveis, etc.

Ocorreu um erro na minha atualização

api_key = "a quick brown fox"
fetch("https://api.example.com/data", headers: { 'Authorization' => api_key })

Por favor, me ajude a corrigi-lo.Parece haver um problema com sua conexão de rede. Tentando novamente…
info Parece haver um problema com sua conexão de rede. Tentando novamente…
info Parece haver um problema com sua conexão de rede. Tentando novamente…
info Parece haver um problema com sua conexão de rede. Tentando novamente…
info Parece haver um problema com sua conexão de rede. Tentando novamente…
info Visite yarn install | Yarn para documentação sobre este comando.

98:signal-handler (1720109872) Recebido SIGTERM agendando desligamento…
98:M 04 Jul 2024 16:17:52.663 # Desligamento solicitado pelo usuário…
98:M 04 Jul 2024 16:17:52.663 * Salvando o snapshot RDB final antes de sair.
I, [2024-07-04T16:17:52.653347 #1] INFO – : Terminando processos assíncronos
I, [2024-07-04T16:17:52.653701 #1] INFO – : Enviando INT para 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-07-04T16:17:52.653954 #1] INFO – : Enviando TERM para exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.c onf pid: 98
2024-07-04 16:17:52.657 UTC [36] LOG: recebido pedido de desligamento rápido
2024-07-04 16:17:52.664 UTC [36] LOG: abortando transações ativas
2024-07-04 16:17:52.743 UTC [36] LOG: trabalhador em segundo plano “logical replication launcher” (PID 51) saiu com código de saída 1
2024-07-04 16:17:52.744 UTC [46] LOG: desligando
2024-07-04 16:17:52.860 UTC [36] LOG: sistema de banco de dados desligado
98:M 04 Jul 2024 16:17:53.048 * DB salvo em disco
98:M 04 Jul 2024 16:17:53.049 # Redis está pronto para sair, tchau…

FALHOU

Pups::ExecError: cd /var/www/discourse && su discourse -c ‘yarn install --frozen-lockfile && yarn cache clean’ falhou com retorno # <Process::Status: pid 268 exit 1>
Local da falha: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn’
exec falhou com os parâmetros {“cd”=>“$home”, “hook”=>“yarn”, “cmd”=>[“if [ "$version" != "tests-passed" ]; then\n rm -rf app/as sets/javascripts/node_modules\nfi”, “su discourse -c ‘yarn install --frozen-lockfile && yarn cache clean’”]}
bootstrap falhou com código de saída 1
** FALHA NO BOOTSTRAP ** por favor, role para cima e procure por mensagens de erro anteriores, pode haver mais de uma.
./discourse-doctor pode ajudar a diagnosticar o problema.
28e72690ac1f17e0226b0c7546f1e9d9f299131572ed4deacc95bc109166e028
==================== FIM DO LOG DE RECONSTRUÇÃO ====================
Falha ao reconstruir o app.

Verificando seu nome de domínio . . .

Conexão com **************** bem-sucedida.
Provavelmente você deve remover qualquer plugin não padrão e reconstruir.
Tentando reiniciar o container existente. . .
Arquitetura x86_64 detectada.

iniciando container existente

  • /usr/bin/docker start app
    app
    ce55082edacf local_discourse/app “/sbin/boot” 4 semanas atrás Ativo há menos de um segundo app
    Container reiniciado.

==================== PLUGINS ====================
- git clone GitHub - discourse/docker_manager: Plugin for use with discourse docker image · GitHub

Nenhum plugin não oficial detectado.

Veja discourse/lib/plugin/metadata.rb at main · discourse/discourse · GitHub para a lista oficial.

========================================
Versão do Discourse em ***************: NÃO ENCONTRADA
Versão do Discourse em localhost: NÃO ENCONTRADA

==================== INFORMAÇÕES DE MEMÓRIA ====================
RAM (MB): 6209

           total        usado        livre      compartilhado  buff/cache   disponível

Mem: 5921 1978 2453 166 1489 3474
Swap: 0 0 0

==================== VERIFICAÇÃO DE ESPAÇO EM DISCO ====================
---------- Espaço em Disco do SO ----------
Sistema de arquivos Tamanho Usado Disp Uso% Montado em
/dev/sda3 391G 23G 349G 7% /

==================== INFORMAÇÕES DE DISCO ====================
Disco /dev/sda: 400 GiB, 429496729600 bytes, 838860800 setores
Modelo do disco: QEMU HARDDISK
Unidades: setores de 1 * 512 = 512 bytes
Tamanho do setor (lógico/físico): 512 bytes / 512 bytes
Tamanho de E/S (mínimo/ótimo): 512 bytes / 512 bytes
Tipo de rótulo do disco: gpt
Identificador do disco: 1B86FC4E-2370-48E1-8752-0E932DA55E09

Dispositivo Início Fim Setores Tamanho Tipo
/dev/sda1 2048 4095 2048 1M BIOS boot
/dev/sda2 4096 4194303 4190208 2G Sistema de arquivos Linux
/dev/sda3 4194304 838858751 834664448 398G Sistema de arquivos Linux

==================== FIM DAS INFORMAÇÕES DE DISCO ====================

==================== TESTE DE E-MAIL ====================
Para um teste robusto, obtenha um endereço em http://www.mail-tester.com/
Ou apenas envie uma mensagem de teste para si mesmo.
Endereço de e-mail para teste de e-mail? (‘n’ para pular) [*****]:
Enviando e-mail para . . .
Testando envio para ********************** usando email-smtp.us-east-1.amazonaws.com:587, usuário:
com autenticação simples .
Conexão com o servidor SMTP bem-sucedida.
Enviando para . . .
E-mail aceito pelo servidor SMTP.
Message-ID: 2bddc993-deed-4fbc-905e-bc692afc97d8@
.com

Se você não receber a mensagem, verifique sua pasta de SPAM
ou teste novamente usando um serviço como http://www.mail-tester.com/.

Se a mensagem não for entregue, não é um problema com o Discourse.
Verifique os logs do servidor SMTP para o Message ID acima para ver por que ele
falhou ao entregar a mensagem.
Substituindo: SMTP_PASSWORD
Substituindo: LETSENCRYPT_ACCOUNT_EMAIL
Substituindo: DEVELOPER_EMAILS
Substituindo: DISCOURSE_DB_PASSWORD
Substituindo: Enviando e-mail para

==================== CONCLUÍDO! ====================


app.yml

este é o modelo de container Docker standalone all-in-one do Discourse

Após fazer alterações neste arquivo, você DEVE reconstruir

/var/discourse/launcher rebuild app

TENHA MUITO CUIDADO AO EDITAR!

ARQUIVOS YAML SÃO SUPER SUPER SENSÍVEIS A ERROS DE ESPAÇAMENTO OU ALINHAMENTO!

visite http://www.yamllint.com/ para validar este arquivo conforme necessário

templates:

  • “templates/postgres.template.yml”
  • “templates/redis.template.yml”
  • “templates/web.template.yml”

Descomente a próxima linha para habilitar o listener IPv6

#- “templates/web.ipv6.template.yml”

  • “templates/web.ratelimited.template.yml”

Descomente estas duas linhas se desejar adicionar Lets Encrypt (https)

#- “templates/web.ssl.template.yml”
#- “templates/web.letsencrypt.ssl.template.yml”
#- “templates/web.socketed.template.yml”

quais portas TCP/IP este container deve expor?

Se você quiser que o Discourse compartilhe uma porta com outro servidor web como Apache ou nginx,

veja Run other websites on the same machine as Discourse para detalhes

expose:

- “80:80” # http

- “443:443” # https

params:
db_default_text_search_config: “pg_catalog.english”

Defina db_shared_buffers para no máximo 25% da memória total.

será definido automaticamente pelo bootstrap com base na RAM detectada, ou você pode substituir

#db_shared_buffers: “256MB”

pode melhorar o desempenho de ordenação, mas adiciona uso de memória por conexão

#db_work_mem: “40MB”

Qual revisão Git este container deve usar? (padrão: tests-passed)

#version: tests-passed

env:
LC_ALL: en_US.UTF-8
LANG: en_US.UTF-8
LANGUAGE: en_US.UTF-8

DISCOURSE_DEFAULT_LOCALE: en

Quantas requisições web concorrentes são suportadas? Depende de memória e núcleos de CPU.

será definido automaticamente pelo bootstrap com base nas CPUs detectadas, ou você pode substituir

#UNICORN_WORKERS: 3

TODO: O nome de domínio ao qual esta instância do Discourse responderá

Obrigatório. O Discourse não funcionará com um número IP puro.

DISCOURSE_HOSTNAME: ‘**************’

Descomente se quiser que o container seja iniciado com o mesmo

hostname (opção -h) especificado acima (padrão “$hostname-$config”)

#DOCKER_USE_HOSTNAME: true

TODO: Lista de e-mails delimitados por vírgula que serão feitos admin e developer

no cadastro inicial exemplo ‘user1@example.com,user2@example.com’

DISCOURSE_DEVELOPER_EMAILS: ‘*****************, ******************’

TODO: O servidor de e-mail SMTP usado para validar novas contas e enviar notificações

ENDEREÇO SMTP, nome de usuário e senha são obrigatórios

AVISO o char ‘#’ na senha SMTP pode causar problemas!

DISCOURSE_SMTP_ADDRESS: email-smtp.us-east-1.amazonaws.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: *********************
DISCOURSE_SMTP_PASSWORD: *****************************************
DISCOURSE_SMTP_ENABLE_START_TLS: true # (opcional, padrão true)
#DISCOURSE_SMTP_DOMAIN: ******************* # (obrigatório por alguns provedores)
DISCOURSE_NOTIFICATION_EMAIL: ********************* # (endereço para enviar notificações)

Se você adicionou o modelo Lets Encrypt, descomente abaixo para obter um certificado SSL gratuito

#LETSENCRYPT_ACCOUNT_EMAIL: me@example.com

O endereço CDN http ou https para esta instância do Discourse (configurado para puxar)

veja Enable a CDN for your Discourse para detalhes

#DISCOURSE_CDN_URL: https://discourse-cdn.example.com

A chave de endereço IP de geolocalização maxmind para lookup de endereço IP

veja Upgrade / Rebuilds Fail due to MaxMind DB EOL - #23 by sam para detalhes

#DISCOURSE_MAXMIND_LICENSE_KEY: 1234567890123456

O container Docker é stateless; todos os dados são armazenados em /shared

volumes:

  • volume:
    host: /var/discourse/shared/standalone
    guest: /shared
  • volume:
    host: /var/discourse/shared/standalone/log/var-log
    guest: /var/log

Plugins vão aqui

veja Install plugins on a self-hosted site para detalhes

hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone GitHub - discourse/docker_manager: Plugin for use with discourse docker image · GitHub

Qualquer comando personalizado para executar após a construção

run:

  • exec: echo “Início dos comandos personalizados”

Se você quiser definir o endereço de e-mail ‘De’ para seu primeiro registro, descomente e altere:

Após receber o e-mail de primeiro cadastro, recomente a linha. Ela só precisa ser executada uma vez.

#- exec: rails r “SiteSetting.notification_email=‘***************’”

  • exec: echo “Fim dos comandos personalizados”

docker_args: |
–network nginx_proxy_manager_default

Atualização: Na décima tentativa, consegui reconstruir.

Não sei se teve algum efeito, mas atualizei o motor do Docker para a versão mais recente.

No entanto, embora o contêiner esteja em execução, não consigo acessar a página. Ele continua me dizendo que o endereço IP do servidor está indisponível.

Também tentei acessar o site de outra rede em outro dispositivo, mas sem sucesso.

Como mencionei, no mesmo VPS, estou executando o WordPress no domínio principal, e tudo está funcionando bem. Não entendo como o Discord parou de funcionar tão repentinamente.

Alguma ideia? Estou ficando realmente desesperado.

Problema resolvido.

Por motivos que não entendo, o acesso ao site parou de funcionar após cerca de 24 horas que adicionei um registro TXT ao DNS.

Tentei adicionar um registro A com o IP do servidor no formato forum.domain.com, e depois de um tempo, voltou a funcionar. Anteriormente, redirecionar para um subdomínio com *.domain.com funcionava.

Admito que isso é um mistério para mim, mas o importante é que agora funciona :grinning: