Configuração do Discourse + DigitalOcean + Mailjet

Antes de me criticarem, por favor, notem que li quase todas as postagens nestes fóruns sobre Discourse + Mailjet, mas nada respondeu à minha pergunta específica.

Durante o processo de configuração, o Discourse solicita as seguintes informações:

  • DISCOURSE_DEVELOPER_EMAILS — pode ser qualquer coisa
  • DISCOURSE_SMTP_ADDRESS — Estou usando in-v3.mailjet.com, mas isso é apenas um palpite!
  • DISCOURSE_SMTP_PORT — 587
  • DISCOURSE_SMTP_USER_NAME — Meu nome de login do Mailjet?
  • DISCOURSE_SMTP_PASSWORD — Minha senha de login do Mailjet?

Os três sobre os quais tenho total incerteza são:

  • DISCOURSE_SMTP_ADDRESS
  • DISCOURSE_SMTP_USER_NAME
  • DISCOURSE_SMTP_PASSWORD

O Mailjet não inclui todos esses itens em sua interface em um só lugar, e é realmente incerto o que deve ir onde.

Entrei em contato com a equipe de suporte deles, mas eles responderam com “Após revisar as informações no ticket, foi determinado que precisaremos envolver outro grupo de colegas.”

… e então eles desapareceram por 48 horas.

Já configurei os registros SPF e DKIM para o Mailjet, então todo esse material está pronto, mas acho que o nome de usuário e a senha estão incorretos porque /discourse-doctor sugere que esse é o ponto de falha.

Se você puder me fornecer algumas informações claras aqui, ficarei muito grato! Obrigado.

Devo provavelmente também mencionar: Esta instalação do Discourse está rodando em um subdomínio.

Já instalei o Discourse (com Mailgun) em subdomínios muitas outras vezes, e em cada um desses casos, não precisei fazer nenhuma provisão especial para o subdomínio nos registros DNS (especificamente, os registros SPF e DKIM do Mailgun).

No entanto, algumas das postagens nestes fóruns sugerem que precisarei modificar os registros DNS para o subdomínio.

Mas estou usando o Mailjet para e-mail transacional no domínio principal (um site WordPress) e também no subdomínio. Parece-me que, se eu modificasse os registros para indicar o subdomínio, o e-mail transacional não funcionaria mais no site WordPress.

Ou então, preciso de 2 conjuntos de registros para fazê-los funcionar em ambos.

Mas com base na forma como os sites do Mailgun funcionaram, não acho que precise fazer nenhuma provisão especial para o subdomínio no DNS (além do registro A que cria o subdomínio).

Claramente, estou pelo menos um pouco confuso aqui, então agradecerei qualquer orientação que você possa fornecer.

Você pode encontrá-los nesta página Mailjet, ou configurá-los se necessário.

DISCOURSE_SMTP_USER_NAME = Chave de API do MailJet
DISCOURSE_SMTP_PASSWORD = Segredo da Chave de API do MailJet
DISCOURSE_SMTP_ADDRESS está correto em seu exemplo, embora também seja encontrado na mesma tela.

O MailJet precisará que você configure o subdomínio, acredito. Faz tempo que não mexo nisso.

2 curtidas

Uau, então o nome de usuário é a chave da API? Eu nunca teria descoberto isso. Vou tentar e ver se funciona.

A propósito, alguma ideia de como mudar o remetente de um endereço de e-mail para outro? O remetente padrão do WordPress é atualmente um domínio diferente do site real, e eu gostaria de mudar isso. (Não sei como consegui mudar isso em primeiro lugar ou de onde ele pode estar buscando o valor atual, pois não corresponde ao endereço de e-mail do administrador do WordPress.)

Isso é DISCOURSE_NOTIFICATION_EMAIL e discourse-setup pergunta a você por “endereço de e-mail de notificação?” para que você possa alterá-lo facilmente dessa maneira.

2 curtidas

Obrigado!

1 curtida

Até agora, isso NÃO está funcionando para mim. O Discourse não envia um e-mail de teste do console com sucesso, e o processo de instalação do Discourse não está sendo concluído (por motivos que não entendo).

Vou apagar tudo e tentar novamente.

Ok, aqui está a mensagem que recebo durante a instalação com falha:

Alguma ideia de como posso consertar isso? Não está claro o que está errado, já que este erro vem dos próprios arquivos de instalação (e não de algo que eu inseri).

Você poderia compartilhar o log completo? Deveria haver pelo menos alguns erros antes dessa linha.

1 curtida

Executando o discourse doctor agora, mas fornecerei os logs quando terminar. Duas perguntas:

  1. O Discourse Doctor parece ter travado nas seguintes linhas:
Node.js heap_size_limit (488.25) is less than 1024MB. Setting --max-old-space-size=1024.
Node.js heap_size_limit (488.25) is less than 2048MB. Disabling Webpack parallelization with JOBS=0 to conserve memory.
110:M 06 Dec 2023 20:31:39.033 * 100 changes in 300 seconds. Saving...
110:M 06 Dec 2023 20:31:39.037 * Background saving started by pid 3264
3264:C 06 Dec 2023 20:31:39.055 * DB saved on disk
3264:C 06 Dec 2023 20:31:39.056 * Fork CoW for RDB: current 0 MB, peak 0 MB, average 0 MB
110:M 06 Dec 2023 20:31:39.138 * Background saving terminated with success
  1. Qual comando preciso digitar para obter o arquivo de log? E como posso baixá-lo como um arquivo que posso fornecer a você? (Eu não sou um usuário ávido de console, como provavelmente fica claro.)

O Discourse doctor foi concluído sozinho, mas ainda com erros.

Aqui estão os resultados do TESTE DE MAIL, que curiosamente sugere o seguinte:

Error response from daemon: No such container: app

Além disso, estou atualmente visualizando a saída do processo do Discourse doctor em less, mas não vejo nenhum comando sobre como compartilhar essas informações com você (fora um gigantesco copiar/colar).

Faz sentido, considerando que o fórum falhou na compilação.

Copiar e colar seria o que eu sugeriria.

1 curtida
Found containers/app.yml

==================== YML SETTINGS ====================
DISCOURSE_HOSTNAME=forum.jimclair.com
SMTP_ADDRESS=in-v3.mailjet.com
DEVELOPER_EMAILS=REDACTED 
SMTP_PASSWORD=REDACTED 
SMTP_PORT=587
SMTP_USER_NAME=495e2921d498a8d1d5ebb0afaccd7b1e
LETSENCRYPT_ACCOUNT_EMAIL=REDACTED 

==================== DOCKER INFO ====================
DOCKER VERSION: Docker version 24.0.7, build afdd53b

DOCKER PROCESSES (docker ps -a)

CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES

==================== SERIOUS PROBLEM!!!! ====================
app not running!
Attempting to rebuild
==================== REBUILD LOG ====================
x86_64 arch detected.
Ensuring launcher is up to date
Launcher is up-to-date
2.0.20231023-1945: Pulling from discourse/base
Digest: sha256:2b0eb484d20888cc2daadb690dcfa73522105650c1420212e99345a36a424d77
Status: Image is up to date for discourse/base:2.0.20231023-1945
docker.io/discourse/base:2.0.20231023-1945
/usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups.rb
/usr/local/bin/pups --stdin
I, [2023-12-06T20:26:30.044059 #1]  INFO -- : Reading from stdin
I, [2023-12-06T20:26:30.054996 #1]  INFO -- : > locale-gen $LANG && update-locale
I, [2023-12-06T20:26:30.127937 #1]  INFO -- : Generating locales (this might take a while)...
Generation complete.

I, [2023-12-06T20:26:30.129014 #1]  INFO -- : > mkdir -p /shared/postgres_run
I, [2023-12-06T20:26:30.136308 #1]  INFO -- : 
I, [2023-12-06T20:26:30.137496 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run
I, [2023-12-06T20:26:30.146483 #1]  INFO -- : 
I, [2023-12-06T20:26:30.147545 #1]  INFO -- : > chmod 775 /shared/postgres_run
I, [2023-12-06T20:26:30.151785 #1]  INFO -- : 
I, [2023-12-06T20:26:30.152774 #1]  INFO -- : > rm -fr /var/run/postgresql
I, [2023-12-06T20:26:30.156678 #1]  INFO -- : 
I, [2023-12-06T20:26:30.157561 #1]  INFO -- : > ln -s /shared/postgres_run /var/run/postgresql
I, [2023-12-06T20:26:30.161932 #1]  INFO -- : 
I, [2023-12-06T20:26:30.162762 #1]  INFO -- : > socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres already running stop container ; exit 1
2023/12/06 20:26:30 socat[18] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36): No such file or directory
I, [2023-12-06T20:26:30.178043 #1]  INFO -- : 
I, [2023-12-06T20:26:30.178987 #1]  INFO -- : > rm -fr /shared/postgres_run/.s*
I, [2023-12-06T20:26:30.185013 #1]  INFO -- : 
I, [2023-12-06T20:26:30.186426 #1]  INFO -- : > rm -fr /shared/postgres_run/*.pid
I, [2023-12-06T20:26:30.192271 #1]  INFO -- : 
I, [2023-12-06T20:26:30.193332 #1]  INFO -- : > mkdir -p /shared/postgres_run/13-main.pg_stat_tmp
I, [2023-12-06T20:26:30.198906 #1]  INFO -- : 
I, [2023-12-06T20:26:30.200224 #1]  INFO -- : > chown postgres:postgres /shared/postgres_run/13-main.pg_stat_tmp
I, [2023-12-06T20:26:30.205350 #1]  INFO -- : 
I, [2023-12-06T20:26:30.216408 #1]  INFO -- : File > /etc/service/postgres/run  chmod: +x  chown: 
I, [2023-12-06T20:26:30.226083 #1]  INFO -- : File > /etc/service/postgres/log/run  chmod: +x  chown: 
I, [2023-12-06T20:26:30.235233 #1]  INFO -- : File > /etc/runit/3.d/99-postgres  chmod: +x  chown: 
I, [2023-12-06T20:26:30.244692 #1]  INFO -- : File > /root/upgrade_postgres  chmod: +x  chown: 
I, [2023-12-06T20:26:30.246204 #1]  INFO -- : > chown -R root /var/lib/postgresql/13/main
I, [2023-12-06T20:26:32.183094 #1]  INFO -- : 
I, [2023-12-06T20:26:32.184301 #1]  INFO -- : > [ ! -e /shared/postgres_data ] && install -d -m 0755 -o postgres -g postgres /shared/postgres_data && sudo -E -u postgres /usr/lib/postgresql/13/bin/initdb -D /shared/postgres_data || exit 0
I, [2023-12-06T20:26:32.188149 #1]  INFO -- : 
I, [2023-12-06T20:26:32.188988 #1]  INFO -- : > chown -R postgres:postgres /shared/postgres_data
I, [2023-12-06T20:26:32.234190 #1]  INFO -- : 
I, [2023-12-06T20:26:32.235330 #1]  INFO -- : > chown -R postgres:postgres /var/run/postgresql
I, [2023-12-06T20:26:32.239962 #1]  INFO -- : 
I, [2023-12-06T20:26:32.241087 #1]  INFO -- : > /root/upgrade_postgres
I, [2023-12-06T20:26:32.250757 #1]  INFO -- : 
I, [2023-12-06T20:26:32.251706 #1]  INFO -- : > rm /root/upgrade_postgres
I, [2023-12-06T20:26:32.255928 #1]  INFO -- : 
I, [2023-12-06T20:26:32.258122 #1]  INFO -- : Replacing data_directory = '/var/lib/postgresql/13/main' with data_directory = '/shared/postgres_data' in /etc/postgresql/13/main/postgresql.conf
I, [2023-12-06T20:26:32.259713 #1]  INFO -- : Replacing (?-mix:#?listen_addresses *=.*) with listen_addresses = '*' in /etc/postgresql/13/main/postgresql.conf
I, [2023-12-06T20:26:32.260811 #1]  INFO -- : Replacing (?-mix:#?synchronous_commit *=.*) with synchronous_commit = $db_synchronous_commit in /etc/postgresql/13/main/postgresql.conf
I, [2023-12-06T20:26:32.262442 #1]  INFO -- : Replacing (?-mix:#?shared_buffers *=.*) with shared_buffers = $db_shared_buffers in /etc/postgresql/13/main/postgresql.conf
I, [2023-12-06T20:26:32.263355 #1]  INFO -- : Replacing (?-mix:#?work_mem *=.*) with work_mem = $db_work_mem in /etc/postgresql/13/main/postgresql.conf
I, [2023-12-06T20:26:32.264184 #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, [2023-12-06T20:26:32.264947 #1]  INFO -- : > install -d -m 0755 -o postgres -g postgres /shared/postgres_backup
I, [2023-12-06T20:26:32.272176 #1]  INFO -- : 
I, [2023-12-06T20:26:32.273754 #1]  INFO -- : Replacing (?-mix:#?checkpoint_segments *=.*) with checkpoint_segments = $db_checkpoint_segments in /etc/postgresql/13/main/postgresql.conf
I, [2023-12-06T20:26:32.274919 #1]  INFO -- : Replacing (?-mix:#?logging_collector *=.*) with logging_collector = $db_logging_collector in /etc/postgresql/13/main/postgresql.conf
I, [2023-12-06T20:26:32.275763 #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, [2023-12-06T20:26:32.276744 #1]  INFO -- : Replacing (?-mix:^#local +replication +postgres +peer$) with local replication postgres  peer in /etc/postgresql/13/main/pg_hba.conf
I, [2023-12-06T20:26:32.277507 #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, [2023-12-06T20:26:32.278326 #1]  INFO -- : Replacing (?-mix:^host.*all.*all.*::1\/128.*$) with host all all ::/0 md5 in /etc/postgresql/13/main/pg_hba.conf
I, [2023-12-06T20:26:32.279092 #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, [2023-12-06T20:26:32.282210 #1]  INFO -- : > sleep 5
2023-12-06 20:26:32.359 UTC [41] LOG:  starting PostgreSQL 13.12 (Debian 13.12-1.pgdg110+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 10.2.1-6) 10.2.1 20210110, 64-bit
2023-12-06 20:26:32.361 UTC [41] LOG:  listening on IPv4 address "0.0.0.0", port 5432
2023-12-06 20:26:32.362 UTC [41] LOG:  listening on IPv6 address "::", port 5432
2023-12-06 20:26:32.365 UTC [41] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2023-12-06 20:26:32.373 UTC [44] LOG:  database system was shut down at 2023-12-06 20:24:03 UTC
2023-12-06 20:26:32.383 UTC [41] LOG:  database system is ready to accept connections
I, [2023-12-06T20:26:37.289395 #1]  INFO -- : 
I, [2023-12-06T20:26:37.289669 #1]  INFO -- : > su postgres -c 'createdb discourse' || true
2023-12-06 20:26:37.379 UTC [54] postgres@postgres ERROR:  database "discourse" already exists
2023-12-06 20:26:37.379 UTC [54] postgres@postgres STATEMENT:  CREATE DATABASE discourse;
createdb: error: database creation failed: ERROR:  database "discourse" already exists
I, [2023-12-06T20:26:37.385520 #1]  INFO -- : 
I, [2023-12-06T20:26:37.386567 #1]  INFO -- : > su postgres -c 'psql discourse -c "create user discourse;"' || true
2023-12-06 20:26:37.489 UTC [58] postgres@discourse ERROR:  role "discourse" already exists
2023-12-06 20:26:37.489 UTC [58] postgres@discourse STATEMENT:  create user discourse;
ERROR:  role "discourse" already exists
I, [2023-12-06T20:26:37.493228 #1]  INFO -- : 
I, [2023-12-06T20:26:37.494395 #1]  INFO -- : > su postgres -c 'psql discourse -c "grant all privileges on database discourse to discourse;"' || true
I, [2023-12-06T20:26:37.580872 #1]  INFO -- : GRANT

I, [2023-12-06T20:26:37.582256 #1]  INFO -- : > su postgres -c 'psql discourse -c "alter schema public owner to discourse;"'
I, [2023-12-06T20:26:37.675825 #1]  INFO -- : ALTER SCHEMA

I, [2023-12-06T20:26:37.676981 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists hstore;"'
NOTICE:  extension "hstore" already exists, skipping
I, [2023-12-06T20:26:37.768934 #1]  INFO -- : CREATE EXTENSION
I, [2023-12-06T20:26:37.770031 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists pg_trgm;"'
NOTICE:  extension "pg_trgm" already exists, skipping
I, [2023-12-06T20:26:37.859735 #1]  INFO -- : CREATE EXTENSION

I, [2023-12-06T20:26:37.860890 #1]  INFO -- : > su postgres -c 'psql template1 -c "create extension if not exists vector;"'
NOTICE:  extension "vector" already exists, skipping
I, [2023-12-06T20:26:37.935265 #1]  INFO -- : CREATE EXTENSION

I, [2023-12-06T20:26:37.936060 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists hstore;"'
NOTICE:  extension "hstore" already exists, skipping
I, [2023-12-06T20:26:37.997652 #1]  INFO -- : CREATE EXTENSION

I, [2023-12-06T20:26:37.998539 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists pg_trgm;"'
NOTICE:  extension "pg_trgm" already exists, skipping
I, [2023-12-06T20:26:38.064153 #1]  INFO -- : CREATE EXTENSION

I, [2023-12-06T20:26:38.065166 #1]  INFO -- : > su postgres -c 'psql discourse -c "create extension if not exists vector;"'
NOTICE:  extension "vector" already exists, skipping
I, [2023-12-06T20:26:38.129276 #1]  INFO -- : CREATE EXTENSION

I, [2023-12-06T20:26:38.130194 #1]  INFO -- : > sudo -u postgres psql discourse
I, [2023-12-06T20:26:38.135353 #1]  INFO -- : update pg_database set encoding = pg_char_to_encoding('UTF8') where datname = 'discourse' AND encoding = pg_char_to_encoding('SQL_ASCII');

I, [2023-12-06T20:26:38.239022 #1]  INFO -- : File > /var/lib/postgresql/take-database-backup  chmod: +x  chown: postgres:postgres
I, [2023-12-06T20:26:38.244519 #1]  INFO -- : File > /var/spool/cron/crontabs/postgres  chmod:   chown: 
I, [2023-12-06T20:26:38.245255 #1]  INFO -- : > echo postgres installed!
I, [2023-12-06T20:26:38.248470 #1]  INFO -- : postgres installed!

I, [2023-12-06T20:26:38.255515 #1]  INFO -- : File > /etc/service/redis/run  chmod: +x  chown: 
I, [2023-12-06T20:26:38.261932 #1]  INFO -- : File > /etc/service/redis/log/run  chmod: +x  chown: 
I, [2023-12-06T20:26:38.268388 #1]  INFO -- : File > /etc/runit/3.d/10-redis  chmod: +x  chown: 
I, [2023-12-06T20:26:38.270088 #1]  INFO -- : Replacing daemonize yes with  in /etc/redis/redis.conf
I, [2023-12-06T20:26:38.271335 #1]  INFO -- : Replacing (?-mix:^pidfile.*$) with  in /etc/redis/redis.conf
I, [2023-12-06T20:26:38.272324 #1]  INFO -- : > install -d -m 0755 -o redis -g redis /shared/redis_data
I, [2023-12-06T20:26:38.276442 #1]  INFO -- : 
I, [2023-12-06T20:26:38.277583 #1]  INFO -- : Replacing (?-mix:^logfile.*$) with logfile "" in /etc/redis/redis.conf
I, [2023-12-06T20:26:38.278657 #1]  INFO -- : Replacing (?-mix:^bind .*$) with  in /etc/redis/redis.conf
I, [2023-12-06T20:26:38.281449 #1]  INFO -- : Replacing (?-mix:^dir .*$) with dir /shared/redis_data in /etc/redis/redis.conf
I, [2023-12-06T20:26:38.283018 #1]  INFO -- : Replacing (?-mix:^protected-mode yes) with protected-mode no in /etc/redis/redis.conf
I, [2023-12-06T20:26:38.284259 #1]  INFO -- : Replacing # io-threads 4 with io-threads $redis_io_threads in /etc/redis/redis.conf
I, [2023-12-06T20:26:38.286500 #1]  INFO -- : > echo redis installed
I, [2023-12-06T20:26:38.289930 #1]  INFO -- : redis installed

I, [2023-12-06T20:26:38.290767 #1]  INFO -- : > cat /etc/redis/redis.conf | grep logfile
I, [2023-12-06T20:26:38.300057 #1]  INFO -- : logfile ""

I, [2023-12-06T20:26:38.300939 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2023-12-06T20:26:38.303702 #1]  INFO -- : > sleep 10
110:C 06 Dec 2023 20:26:38.320 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
110:C 06 Dec 2023 20:26:38.321 # Redis version=7.0.7, bits=64, commit=00000000, modified=0, pid=110, just started
110:C 06 Dec 2023 20:26:38.322 # Configuration loaded
110:M 06 Dec 2023 20:26:38.323 * monotonic clock: POSIX clock_gettime
110:M 06 Dec 2023 20:26:38.325 * Running mode=standalone, port=6379.
110:M 06 Dec 2023 20:26:38.325 # Server initialized
110:M 06 Dec 2023 20:26:38.326 # 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.
110:M 06 Dec 2023 20:26:38.327 * Loading RDB produced by version 7.0.7
110:M 06 Dec 2023 20:26:38.328 * RDB age 155 seconds
110:M 06 Dec 2023 20:26:38.328 * RDB memory usage when created 1.44 Mb
110:M 06 Dec 2023 20:26:38.329 * Done loading RDB, keys loaded: 34, keys expired: 0.
110:M 06 Dec 2023 20:26:38.330 * DB loaded from disk: 0.003 seconds
110:M 06 Dec 2023 20:26:38.330 * Ready to accept connections
I, [2023-12-06T20:26:48.309711 #1]  INFO -- : 
I, [2023-12-06T20:26:48.310733 #1]  INFO -- : > thpoff echo "thpoff is installed!"
I, [2023-12-06T20:26:48.315835 #1]  INFO -- : thpoff is installed!

I, [2023-12-06T20:26:48.316614 #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, [2023-12-06T20:26:48.421314 #1]  INFO -- : 
I, [2023-12-06T20:26:48.422469 #1]  INFO -- : > /usr/local/bin/ruby -e 'if ENV["DISCOURSE_HOSTNAME"] == "discourse.example.com"; puts "Aborting! Domain is not configured!"; exit 1; end'
I, [2023-12-06T20:26:48.505162 #1]  INFO -- : 
I, [2023-12-06T20:26:48.506193 #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, [2023-12-06T20:26:48.592535 #1]  INFO -- : 
I, [2023-12-06T20:26:48.593337 #1]  INFO -- : > rm -f /etc/cron.d/anacron
I, [2023-12-06T20:26:48.597070 #1]  INFO -- : 
I, [2023-12-06T20:26:48.601327 #1]  INFO -- : File > /etc/cron.d/anacron  chmod:   chown: 
I, [2023-12-06T20:26:48.608402 #1]  INFO -- : File > /etc/runit/1.d/copy-env  chmod: +x  chown: 
I, [2023-12-06T20:26:48.614544 #1]  INFO -- : File > /etc/service/unicorn/run  chmod: +x  chown: 
I, [2023-12-06T20:26:48.620938 #1]  INFO -- : File > /etc/service/nginx/run  chmod: +x  chown: 
I, [2023-12-06T20:26:48.627641 #1]  INFO -- : File > /etc/runit/3.d/01-nginx  chmod: +x  chown: 
I, [2023-12-06T20:26:48.634446 #1]  INFO -- : File > /etc/runit/3.d/02-unicorn  chmod: +x  chown: 
I, [2023-12-06T20:26:48.635292 #1]  INFO -- : Replacing # postgres with sv start postgres || exit 1 in /etc/service/unicorn/run
I, [2023-12-06T20:26:48.636055 #1]  INFO -- : > exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf
I, [2023-12-06T20:26:48.639453 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git reset --hard
137:C 06 Dec 2023 20:26:48.649 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
137:C 06 Dec 2023 20:26:48.650 # Redis version=7.0.7, bits=64, commit=00000000, modified=0, pid=137, just started
137:C 06 Dec 2023 20:26:48.650 # Configuration loaded
137:M 06 Dec 2023 20:26:48.651 * monotonic clock: POSIX clock_gettime
137:M 06 Dec 2023 20:26:48.654 # Warning: Could not create server TCP listening socket *:6379: bind: Address already in use
137:M 06 Dec 2023 20:26:48.654 # Failed listening on port 6379 (TCP), aborting.
Updating files:  14% (4924/33858)^MUpdating files:  15% (5079/33858)^MUpdating files:  16% (5418/33858)^MUpdating files:  17% (5756/33858)^MUpdating files:  18% (6095/33858)^MUpdating files:  19% (6434/33858)^MUpdating files:  20% (6772/33858)^MUpdating files:  21% (7111/33858)^MUpdating files:  22% (7449/33858)^MUpdating files:  23% (7788/33858)^MUpdating files:  24% (8126/33858)^MUpdating files:  25% (8465/33858)^MUpdating files:  26% (8804/33858)^MUpdating files:  27% (9142/33858)^MUpdating files:  28% (9481/33858)^MUpdating files:  28% (9556/33858)^MUpdating files:  29% (9819/33858)^MUpdating files:  30% (10158/33858)^MUpdating files:  31% (10496/33858)^MUpdating files:  32% (10835/33858)^MUpdating files:  33% (11174/33858)^MUpdating files:  34% (11512/33858)^MUpdating files:  35% (11851/33858)^MUpdating files:  36% (12189/33858)^MUpdating files:  37% (12528/33858)^MUpdating files:  38% (12867/33858)^MUpdating files:  39% (13205/33858)^MUpdating files:  40% (13544/33858)^MUpdating files:  41% (13882/33858)^MUpdating files:  42% (14221/33858)^MUpdating files:  43% (14559/33858)^MUpdating files:  44% (14898/33858)^MUpdating files:  45% (15237/33858)^MUpdating files:  45% (15499/33858)^MUpdating files:  46% (15575/33858)^M^MUpdating files:  47% (15914/33858)^MUpdating files:  48% (16252/33858)^MUpdating files:  49% (16591/33858)^MUpdating files:  50% (16929/33858)^MUpdating files:  51% (17268/33858)^MUpdating files:  52% (17607/33858)^MUpdating files:  53% (17945/33858)^MUpdating files:  54% (18284/33858)^MUpdating files:  55% (18622/33858)^MUpdating files:  56% (18961/33858)^MUpdating files:  57% (19300/33858)^MUpdating files:  58% (19638/33858)^MUpdating files:  59% (19977/33858)^MUpdating files:  60% (20315/33858)^MUpdating files:  61% (20654/33858)^MUpdating files:  62% (20992/33858)^MUpdating files:  63% (21331/33858)^MUpdating files:  64% (21670/33858)^MUpdating files:  64% (21754/33858)^MUpdating files:  65% (22008/33858)^MUpdating files:  66% (22347/33858)^MUpdating files:  67% (22685/33858)^MUpdating files:  68% (23024/33858)^MUpdating files:  69% (23363/33858)^MUpdating files:  70% (23701/33858)^MUpdating files:  71% (24040/33858)^MUpdating files:  72% (24378/33858)^MUpdating files:  73% (24717/33858)^MUpdating files:  74% (25055/33858)^MUpdating files:  75% (25394/33858)^MUpdating files:  76% (25733/33858)^MUpdating files:  77% (26071/33858)^MUpdating files:  78% (26410/33858)^MUpdating files:  79% (26748/33858)^MUpdating files:  80% (27087/33858)^MUpdating files:  80% (27336/33858)^MUpdating files:  81% (27425/33858)^MUpdating files:  82% (27764/33858)^MUpdating files:  83% (28103/33858)^MUpdating files:  84% (28441/33858)^MUpdating files:  85% (28780/33858)^MUpdating files:  86% (29118/33858)^MUpdating files:  87% (29457/33858)^MUpdating files:  88% (29796/33858)^MUpdating files:  89% (30134/33858)^MUpdating files:  90% (30473/33858)^MUpdating files:  91% (30811/33858)^MUpdating files:  92% (31150/33858)^MUpdating files:  93% (31488/33858)^MUpdating files:  94% (31827/33858)^MUpdating files:  94% (32069/33858)^MUpdating files:  95% (32166/33858)^MUpdating files:  96% (32504/33858)^MUpdating files:  97% (32843/33858)^MUpdating files:  98% (33181/33858)^MUpdating files:  99% (33520/33858)^MUpdating files: 100% (33858/33858)^MUpdating files: 100% (33858/33858), done.
I, [2023-12-06T20:26:56.173644 #1]  INFO -- : HEAD is now at 043b4a418 FIX: replaces data-tooltip usage by <DTooltip /> (#24062)

I, [2023-12-06T20:26:56.177410 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git clean -f
I, [2023-12-06T20:26:56.982967 #1]  INFO -- : 
I, [2023-12-06T20:26:56.983710 #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/0-flake-key
 - [deleted]             (none)     -> origin/0-obscuring
 - [deleted]             (none)     -> origin/0-router-lint
 - [deleted]             (none)     -> origin/0-router-service
 - [deleted]             (none)     -> origin/autoimport-cleanup
 - [deleted]             (none)     -> origin/category-bullet-only
 - [deleted]             (none)     -> origin/dependabot/bundler/syntax_tree-6.2.0
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-3.4.0
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-multipart-3.8.0
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/core-3.6.0
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/utils-5.5.2
 - [deleted]             (none)     -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/xhr-upload-3.4.2
 - [deleted]             (none)     -> origin/dev-upgrade-reject-reason-reviewable-modal
 - [deleted]             (none)     -> origin/dev/ability-to-collect-stats-without-public-exposing
 - [deleted]             (none)     -> origin/dev/minio-s3-system-specs
 - [deleted]             (none)     -> origin/dev/re-enable-minio-specs
 - [deleted]             (none)     -> origin/dev/switch-over-category-settings
 - [deleted]             (none)     -> origin/dev/switch-over-more-category-settings
 - [deleted]             (none)     -> origin/discovery-named-outlets
 - [deleted]             (none)     -> origin/feature/theme-settings-migration
 - [deleted]             (none)     -> origin/fix/account-for-empty-string-site-settings
 - [deleted]             (none)     -> origin/footnote-plugin
 - [deleted]             (none)     -> origin/metadata-update
 - [deleted]             (none)     -> origin/modal-ux
 - [deleted]             (none)     -> origin/neil-2
 - [deleted]             (none)     -> origin/perf_cache_async_search
 - [deleted]             (none)     -> origin/spoiler-plugin
 - [deleted]             (none)     -> origin/support-search-customizationz
   043b4a418..42a75e3df  main                   -> origin/main
 * [new branch]          0-lint-suffix          -> origin/0-lint-suffix
 * [new branch]          0-rubocop              -> origin/0-rubocop
 * [new branch]          0-timeoubara           -> origin/0-timeoubara
 * [new branch]          0-typos                -> origin/0-typos
 * [new branch]          add-custom-emoji-sanitization-clean -> origin/add-custom-emoji-sanitization-clean
 * [new branch]          add-ds-store-to-gitignore -> origin/add-ds-store-to-gitignore
 + 64520a075...ff17131c9 add-new-chat-indicator-preference-only-mentions -> origin/add-new-chat-indicator-preference-only-mentions  (forced update)
 * [new branch]          api-topic-title-decorator -> origin/api-topic-title-decorator
 * [new branch]          array-custom-field-fix -> origin/array-custom-field-fix
 * [new branch]          array-custom-field-order -> origin/array-custom-field-order
 * [new branch]          avatar-notifications   -> origin/avatar-notifications
 * [new branch]          boosted-searches       -> origin/boosted-searches
 * [new branch]          bulk-button-class      -> origin/bulk-button-class
 * [new branch]          category_definition    -> origin/category_definition
 * [new branch]          chat-github-onebox     -> origin/chat-github-onebox
 * [new branch]          chat-reaction-emoji-alignment -> origin/chat-reaction-emoji-alignment
 * [new branch]          chat/direct-messages   -> origin/chat/direct-messages
 * [new branch]          custom-field-store-cleanup -> origin/custom-field-store-cleanup
 * [new branch]          delete-backups-based-on-time-window -> origin/delete-backups-based-on-time-window
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-3.5.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-3.5.0
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-multipart-3.9.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/aws-s3-multipart-3.9.0
* [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/core-3.7.1 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/core-3.7.1
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/utils-5.6.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/utils-5.6.0
 * [new branch]          dependabot/npm_and_yarn/app/assets/javascripts/uppy/xhr-upload-3.5.0 -> origin/dependabot/npm_and_yarn/app/assets/javascripts/uppy/xhr-upload-3.5.0
 * [new branch]          desktop-notification-handlers -> origin/desktop-notification-handlers
 * [new branch]          dev/add-a-reference-column-to-notifications -> origin/dev/add-a-reference-column-to-notifications
 + ee95e6359...346f9d1cd dev/add-new-chat-metrics -> origin/dev/add-new-chat-metrics  (forced update)
 * [new branch]          dev/dry-up-user-status-serializers -> origin/dev/dry-up-user-status-serializers
 * [new branch]          dev/flaky-chat-details-collapser-spec -> origin/dev/flaky-chat-details-collapser-spec
 * [new branch]          dev/no-need-to-include-user-status-twice -> origin/dev/no-need-to-include-user-status-twice
 * [new branch]          dev/rethink-mass-mentions -> origin/dev/rethink-mass-mentions
 * [new branch]          dev/rethink-mass-mentions-polymorphic -> origin/dev/rethink-mass-mentions-polymorphic
 * [new branch]          dev/revert-guardian-devex -> origin/dev/revert-guardian-devex
 * [new branch]          dev/use-system-user-id-const -> origin/dev/use-system-user-id-const
 + 54940ca5c...fb0c7ba69 dev_paginate_categories_json -> origin/dev_paginate_categories_json  (forced update)
 * [new branch]          dev_watched_words      -> origin/dev_watched_words
 + 46fe4511f...a9d0e7069 ember-4                -> origin/ember-4  (forced update)
 * [new branch]          ember-5-plugins        -> origin/ember-5-plugins
 * [new branch]          extract_stripper       -> origin/extract_stripper
 * [new branch]          feature/add-copy-share-link-post-functionality -> origin/feature/add-copy-share-link-post-functionality
   9a6c6fd5b..8780daeee  feature/bookmark-menu-and-modal-redesign -> origin/feature/bookmark-menu-and-modal-redesign
 * [new branch]          feature/migrations-schema-generator -> origin/feature/migrations-schema-generator
 * [new branch]          feature_watched_words_validation -> origin/feature_watched_words_validation
 * [new branch]          file-size-restriction  -> origin/file-size-restriction
   43df37774..4393dd37e  filtered-events        -> origin/filtered-events
 * [new branch]          fix/count-mass-mentions-correctly -> origin/fix/count-mass-mentions-correctly
 * [new branch]          fix_category_select_kits -> origin/fix_category_select_kits
 * [new branch]          full-page              -> origin/full-page
   ce7fb6906..a6227532d  generic-import-latest  -> origin/generic-import-latest
 * [new branch]          generic-import-latest-snowflake -> origin/generic-import-latest-snowflake
 * [new branch]          generic-import-update  -> origin/generic-import-update
 * [new branch]          image-assets           -> origin/image-assets
 * [new branch]          independent-theme-compiler -> origin/independent-theme-compiler
 * [new branch]          input-text-field-component -> origin/input-text-field-component
 * [new branch]          issue/fix-guardian-init-basic-user -> origin/issue/fix-guardian-init-basic-user
 * [new branch]          keyword-site-setting   -> origin/keyword-site-setting
 + bdcc24f96...92e545292 list-wrapper           -> origin/list-wrapper  (forced update)
   e3636078c..5def32699  mock-chat-index-redesign -> origin/mock-chat-index-redesign
 * [new branch]          move_inflector         -> origin/move_inflector
 * [new branch]          oklab                  -> origin/oklab
 * [new branch]          poc/auto-after-before-plugin-outlets -> origin/poc/auto-after-before-plugin-outlets
 * [new branch]          poc/insert-before-after-wrapping-outlet -> origin/poc/insert-before-after-wrapping-outlet
 * [new branch]          pretty-text-please     -> origin/pretty-text-please
 * [new branch]          revert-maxmind         -> origin/revert-maxmind
   ef3f41543..223626d7a  stable                 -> origin/stable
 * [new branch]          support-load-more-btn  -> origin/support-load-more-btn
 * [new branch]          test-issue-temporary   -> origin/test-issue-temporary
   043b4a418..42a75e3df  tests-passed           -> origin/tests-passed
 * [new branch]          tobiaseigen-patch-3    -> origin/tobiaseigen-patch-3
 * [new branch]          transform-hooks        -> origin/transform-hooks
 * [new branch]          transform-post-fn-api  -> origin/transform-post-fn-api
 * [new branch]          tweaks-2-fr            -> origin/tweaks-2-fr
 * [new branch]          use-sassc-embedded     -> origin/use-sassc-embedded
 * [new branch]          username_cache         -> origin/username_cache
 * [new branch]          ux-add-sorting-params-to-outlet -> origin/ux-add-sorting-params-to-outlet
 t [tag update]          beta                   -> beta
 t [tag update]          latest-release         -> latest-release
 * [new tag]             v3.1.3                 -> v3.1.3
 * [new tag]             v3.2.0.beta3           -> v3.2.0.beta3
I, [2023-12-06T20:26:58.926569 #1]  INFO -- : 
I, [2023-12-06T20:26:58.927227 #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, [2023-12-06T20:27:03.240852 #1]  INFO -- : Branch 'tests-passed' set up to track remote branch 'tests-passed' from 'origin'.

I, [2023-12-06T20:27:03.241691 #1]  INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git config user.discourse-version tests-passed
I, [2023-12-06T20:27:03.259458 #1]  INFO -- : 
I, [2023-12-06T20:27:03.260307 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp
I, [2023-12-06T20:27:03.268215 #1]  INFO -- : 
I, [2023-12-06T20:27:03.268948 #1]  INFO -- : > cd /var/www/discourse && chown discourse:www-data tmp
I, [2023-12-06T20:27:03.274182 #1]  INFO -- : 
I, [2023-12-06T20:27:03.274855 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/pids
I, [2023-12-06T20:27:03.278878 #1]  INFO -- : 
I, [2023-12-06T20:27:03.279454 #1]  INFO -- : > cd /var/www/discourse && mkdir -p tmp/sockets
I, [2023-12-06T20:27:03.283264 #1]  INFO -- : 
I, [2023-12-06T20:27:03.283766 #1]  INFO -- : > cd /var/www/discourse && touch tmp/.gitkeep
I, [2023-12-06T20:27:03.288610 #1]  INFO -- : 
I, [2023-12-06T20:27:03.289240 #1]  INFO -- : > cd /var/www/discourse && mkdir -p                    /shared/log/rails
I, [2023-12-06T20:27:03.294659 #1]  INFO -- : 
I, [2023-12-06T20:27:03.295302 #1]  INFO -- : > cd /var/www/discourse && bash -c "touch -a           /shared/log/rails/{production,production_errors,unicorn.stdout,unicorn.stderr,sidekiq}.log"
I, [2023-12-06T20:27:03.302627 #1]  INFO -- : 
I, [2023-12-06T20:27:03.303433 #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, [2023-12-06T20:27:03.315829 #1]  INFO -- : 
I, [2023-12-06T20:27:03.316535 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/{uploads,backups}"
I, [2023-12-06T20:27:03.323346 #1]  INFO -- : 
I, [2023-12-06T20:27:03.324041 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/{uploads,backups} /var/www/discourse/public"
I, [2023-12-06T20:27:03.329963 #1]  INFO -- : 
I, [2023-12-06T20:27:03.330611 #1]  INFO -- : > cd /var/www/discourse && bash -c "mkdir -p           /shared/tmp/{backups,restores}"
I, [2023-12-06T20:27:03.336990 #1]  INFO -- : 
I, [2023-12-06T20:27:03.338135 #1]  INFO -- : > cd /var/www/discourse && bash -c "ln    -s           /shared/tmp/{backups,restores} /var/www/discourse/tmp"
I, [2023-12-06T20:27:03.344705 #1]  INFO -- : 
I, [2023-12-06T20:27:03.345357 #1]  INFO -- : > cd /var/www/discourse && chown -R discourse:www-data /shared/log/rails /shared/uploads /shared/backups /shared/tmp
I, [2023-12-06T20:27:03.352154 #1]  INFO -- : 
I, [2023-12-06T20:27:03.352907 #1]  INFO -- : > cd /var/www/discourse && [ ! -d public/plugins ] || find public/plugins/ -maxdepth 1 -xtype l -delete
I, [2023-12-06T20:27:03.356397 #1]  INFO -- : 
I, [2023-12-06T20:27:03.358224 #1]  INFO -- : Replacing # redis with sv start redis || exit 1 in /etc/service/unicorn/run
I, [2023-12-06T20:27:03.359316 #1]  INFO -- : > cd /var/www/discourse/plugins && git clone https://github.com/discourse/docker_manager.git
Cloning into 'docker_manager'...
I, [2023-12-06T20:27:04.552327 #1]  INFO -- : 
I, [2023-12-06T20:27:04.553636 #1]  INFO -- : > cp /var/www/discourse/config/nginx.sample.conf /etc/nginx/conf.d/discourse.conf
I, [2023-12-06T20:27:04.563675 #1]  INFO -- : 
I, [2023-12-06T20:27:04.565087 #1]  INFO -- : > rm /etc/nginx/sites-enabled/default
I, [2023-12-06T20:27:04.571639 #1]  INFO -- : 
I, [2023-12-06T20:27:04.573162 #1]  INFO -- : > mkdir -p /var/nginx/cache
I, [2023-12-06T20:27:04.580350 #1]  INFO -- : 
I, [2023-12-06T20:27:04.582472 #1]  INFO -- : Replacing pid /run/nginx.pid; with daemon off; in /etc/nginx/nginx.conf
I, [2023-12-06T20:27:04.583466 #1]  INFO -- : Replacing (?m-ix:upstream[^\}]+\}) with upstream discourse { server 127.0.0.1:3000; } in /etc/nginx/conf.d/discourse.conf
I, [2023-12-06T20:27:04.584155 #1]  INFO -- : Replacing (?-mix:server_name.+$) with server_name _ ; in /etc/nginx/conf.d/discourse.conf
I, [2023-12-06T20:27:04.584716 #1]  INFO -- : Replacing (?-mix:client_max_body_size.+$) with client_max_body_size $upload_size ; in /etc/nginx/conf.d/discourse.conf
I, [2023-12-06T20:27:04.585271 #1]  INFO -- : Replacing (?-mix:worker_connections.+$) with worker_connections $nginx_worker_connections ; in /etc/nginx/nginx.conf
I, [2023-12-06T20:27:04.585727 #1]  INFO -- : > echo "done configuring web"
I, [2023-12-06T20:27:04.588861 #1]  INFO -- : done configuring web

I, [2023-12-06T20:27:04.589566 #1]  INFO -- : > cd /var/www/discourse && gem install bundler --conservative -v $(awk '/BUNDLED WITH/ { getline; gsub(/ /,""); print $0 }' Gemfile.lock)
I, [2023-12-06T20:27:04.923204 #1]  INFO -- : 
I, [2023-12-06T20:27:04.927970 #1]  INFO -- : > cd /var/www/discourse && find /var/www/discourse ! -user discourse -exec chown discourse {} \+
I, [2023-12-06T20:27:10.523499 #1]  INFO -- : 
I, [2023-12-06T20:27:10.524699 #1]  INFO -- : > cd /var/www/discourse && if [ "tests-passed" != "tests-passed" ]; then
  rm -rf app/assets/javascripts/node_modules
fi
I, [2023-12-06T20:27:10.527759 #1]  INFO -- : 
I, [2023-12-06T20:27:10.528364 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'yarn install --frozen-lockfile && yarn cache clean'
warning " > @glint/environment-ember-loose@1.1.0" has unmet peer dependency "@glimmer/component@^1.1.2".
warning " > @glint/environment-ember-template-imports@1.1.0" has unmet peer dependency "ember-template-imports@^3.0.0".
warning Resolution field "unset-value@2.0.1" is incompatible with requested version "unset-value@^1.0.0"
warning Pattern ["wrap-ansi@^7.0.0"] is trying to unpack in the same destination "/home/discourse/.cache/yarn/v6/npm-wrap-ansi-cjs-7.0.0-67e145cff510a6a6984bdf1152911d69d2eb9e43-integrity/node_modules/wrap-ansi-cjs" as pattern ["wrap-ansi-cjs@npm:wrap-ansi@^7.0.0"]. This could result in non-deterministic behavior, skipping.
warning " > discourse-markdown-it@1.0.0" has unmet peer dependency "xss@*".
warning "workspace-aggregator-943550ef-70f9-4b27-bc8f-8ecafe854b91 > discourse > @ember/legacy-built-in-components@0.5.0" has incorrect peer dependency "ember-source@>= 4.8".
warning "workspace-aggregator-943550ef-70f9-4b27-bc8f-8ecafe854b91 > discourse > @uppy/aws-s3@3.0.6" has incorrect peer dependency "@uppy/core@^3.1.2".
warning "workspace-aggregator-943550ef-70f9-4b27-bc8f-8ecafe854b91 > discourse > @uppy/aws-s3-multipart@3.1.3" has incorrect peer dependency "@uppy/core@^3.1.2".
warning "workspace-aggregator-943550ef-70f9-4b27-bc8f-8ecafe854b91 > discourse > @uppy/xhr-upload@3.1.1" has incorrect peer dependency "@uppy/core@^3.1.2".
warning "workspace-aggregator-943550ef-70f9-4b27-bc8f-8ecafe854b91 > discourse-plugins > ember-this-fallback@0.4.0" has unmet peer dependency "ember-source@^3.28.11 || ^4.0.0".
warning "workspace-aggregator-943550ef-70f9-4b27-bc8f-8ecafe854b91 > discourse > @uppy/aws-s3 > @uppy/xhr-upload@3.3.0" has incorrect peer dependency "@uppy/core@^3.2.1".
I, [2023-12-06T20:29:55.103882 #1]  INFO -- : yarn install v1.22.19
[1/5] Validating package.json...
[2/5] Resolving packages...
[3/5] Fetching packages...
[4/5] Linking dependencies...
[5/5] Building fresh packages...
$ yarn --cwd app/assets/javascripts $(node -e 'const argv = JSON.parse(process.env.npm_config_argv).original; const passthrough = [`--frozen-lockfile`, `-s`].filter(arg => argv.includes(arg)); console.log(passthrough.join(` `));')
yarn install v1.22.19
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
$ ./run-patch-package
patch-package 8.0.0
Applying patches...
babel-plugin-debug-macros@0.3.4 ✔
content-tag@1.1.2 ✔
ember-cli@5.0.0 ✔
ember-this-fallback@0.4.0 (1 deprecation-name) ✔
ember-this-fallback@0.4.0 (2 themes) ✔
virtual-dom@2.1.1 ✔
Done in 78.38s.
Done in 150.14s.
yarn cache v1.22.19
success Cleared cache.
Done in 13.55s.
I, [2023-12-06T20:29:55.136749 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle config --local deployment true'
I, [2023-12-06T20:29:55.567684 #1]  INFO -- : 
I, [2023-12-06T20:29:55.568701 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle config --local without "development test"'
I, [2023-12-06T20:29:55.820221 #1]  INFO -- : You are replacing the current local value of without, which is currently "test:development"

I, [2023-12-06T20:29:55.821029 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle install --retry 3 --jobs 4'
I, [2023-12-06T20:30:38.015883 #1]  INFO -- : Fetching gem metadata from https://rubygems.org/.........
Fetching rake 13.1.0
Installing rake 13.1.0
Using builder 3.2.4
Using erubi 1.12.0
Fetching racc 1.7.3
Using crass 1.0.6
Using minitest 5.20.0
Using concurrent-ruby 1.2.2
Using rack 2.2.8
Using mini_mime 1.1.5
Fetching timeout 0.4.1
Fetching public_suffix 5.0.4
Fetching date 3.3.4
Installing timeout 0.4.1
Installing racc 1.7.3 with native extensions
Installing date 3.3.4 with native extensions
Installing public_suffix 5.0.4
Fetching aws-eventstream 1.3.0
Installing aws-eventstream 1.3.0
Using jmespath 1.6.2
Fetching base64 0.2.0
Using aws-partitions 1.583.0
Using msgpack 1.7.2
Using bundler 2.4.13
Using byebug 11.1.3
Using cbor 0.5.9.6
Fetching cgi 0.4.1
Installing base64 0.2.0
Installing cgi 0.4.1 with native extensions
Using chunky_png 1.4.0
Using coderay 1.1.3
Using colored2 4.0.0
Using connection_pool 2.4.1
Using openssl 3.2.0
Using cppjieba_rb 0.4.2
Fetching google-protobuf 3.25.1 (x86_64-linux)
Installing google-protobuf 3.25.1 (x86_64-linux)
Using diffy 3.4.2
Using digest 3.1.1
Using discourse-fonts 0.0.9
Using email_reply_trimmer 0.1.13
Fetching excon 0.105.0
Installing excon 0.105.0
Using execjs 2.9.1
Using exifr 1.4.0
Using faraday-net_http 3.0.2
Using ruby2_keywords 0.0.5
Using fast_blank 1.0.1
Using fast_xs 0.8.0
Using fastimage 2.2.7
Using ffi 1.16.3
Using fspath 3.1.2
Using gc_tracer 1.5.1
Using guess_html_encoding 0.0.11
Using hana 1.3.7
Using hashie 5.0.0
Using highline 2.1.0
Using htmlentities 4.3.4
Using http_accept_language 2.1.1
Using image_size 3.3.0
Using in_threads 1.6.0
Using progress 3.6.0
Fetching json 2.7.1
Installing json 2.7.1 with native extensions
Fetching regexp_parser 2.8.3
Installing regexp_parser 2.8.3
Fetching unf_ext 0.0.9.1
Installing unf_ext 0.0.9.1 with native extensions
Using jwt 2.7.1
Using kgio 2.11.4
Using libv8-node 18.16.0.0 (x86_64-linux)
Using method_source 1.0.0
Using thor 1.3.0
Using zeitwerk 2.6.12
Using logstash-event 1.2.02
Fetching logster 2.13.1
Installing logster 2.13.1
Using lru_redux 1.1.0
Using lz4-ruby 0.3.3
Using maxminddb 0.1.22
Using memory_profiler 1.0.1
Using redis 4.8.1
Using mini_sql 1.5.0
Using multi_json 1.15.0
Using multi_xml 0.6.0
Using mustache 1.1.1
Fetching uri 0.13.0
Installing uri 0.13.0
Fetching nio4r 2.7.0
Installing nio4r 2.7.0 with native extensions
Using version_gem 1.1.3
Using oj 3.16.1
Using optimist 3.1.0
Using pg 1.5.4
Using raindrops 0.20.1
Using rchardet 1.8.0
Using rexml 3.2.6
Using rinku 2.0.6
Using rotp 6.3.0
Using rqrcode_core 1.2.0
Using rubyzip 2.3.2
Using sshkey 3.0.0
Using stackprof 0.2.25
Using i18n 1.14.1
Using tzinfo 2.0.6
Using rack-test 2.1.0
Using request_store 1.5.1
Using message_bus 4.3.8
Using rack-mini-profiler 3.1.1
Using rack-protection 3.1.0
Using sprockets 3.7.2 from https://github.com/rails/sprockets (at 3.x@f4d3dae)
Fetching net-protocol 0.2.2
Installing net-protocol 0.2.2
Using aws-sigv4 1.5.0
Using addressable 2.8.5
Fetching bootsnap 1.17.0
Installing bootsnap 1.17.0 with native extensions
Using openssl-signature_algorithm 1.3.0
Fetching sass-embedded 1.66.1 (x86_64-linux-gnu)
Installing sass-embedded 1.66.1 (x86_64-linux-gnu)
Using uglifier 4.2.0
Fetching faraday 2.7.12
Installing faraday 2.7.12
Using mini_suffix 0.3.3
Using omniauth 1.9.2
Using image_optim 0.31.3
Fetching nokogiri 1.15.5 (x86_64-linux)
Installing nokogiri 1.15.5 (x86_64-linux)
Fetching web-push 3.0.1
Installing web-push 3.0.1
Using mini_racer 0.8.0
Using pry 0.14.2
Using logstash-logger 0.26.1
Using sidekiq 6.5.12
Using redis-namespace 1.11.0
Fetching net-http 0.4.0
Using unf 0.1.4
Installing net-http 0.4.0
Using oauth-tty 1.0.5
Using snaky_hash 2.0.1
Fetching rbtrace 0.5.0
Using rss 0.3.0
Using unicorn 6.1.0
Using rqrcode 2.2.0
Using activesupport 7.0.7
Using tzinfo-data 1.2023.3
Using net-pop 0.1.2
Using net-smtp 0.4.0
Using aws-sdk-core 3.130.2
Using css_parser 1.16.0
Using cose 1.3.0
Fetching dartsass-ruby 3.0.2
Installing rbtrace 0.5.0 with native extensions
Installing dartsass-ruby 3.0.2
Using faraday-retry 2.2.0
Using oauth2 1.4.11
Fetching loofah 2.22.0
Installing loofah 2.22.0
Using ruby-readability 0.7.0
Using sanitize 6.1.0
Using rtlcss 0.2.1
Using pry-byebug 3.10.1
Using pry-rails 0.3.9
Using mini_scheduler 0.16.0
Using simpleidn 0.2.1
Using oauth 1.1.0
Using rails-dom-testing 2.2.0
Using globalid 1.2.1
Using activemodel 7.0.7
Using aws-sdk-kms 1.56.0
Using aws-sdk-sns 1.53.0
Using omniauth-oauth2 1.7.3
Using rails-html-sanitizer 1.6.0
Fetching json_schemer 2.1.1
Installing json_schemer 2.1.1
Using omniauth-oauth 1.2.0
Using actionview 7.0.7
Using activejob 7.0.7
Using active_model_serializers 0.8.4
Using activerecord 7.0.7
Using aws-sdk-s3 1.114.0
Using omniauth-facebook 9.0.0
Using omniauth-github 1.4.0
Using omniauth-google-oauth2 0.8.2
Using omniauth-twitter 1.4.0
Using actionpack 7.0.7
Using actionview_precompiler 0.3.0
Using discourse-seed-fu 2.3.12
Using railties 7.0.7
Using sprockets-rails 3.4.2
Using lograge 0.14.0
Using rails_failover 2.0.1
Using rails_multisite 5.0.0
Using puma 6.4.0
Fetching net-imap 0.4.7
Installing net-imap 0.4.7
Using mail 2.8.1
Using actionmailer 7.0.7
Bundle complete! 135 Gemfile dependencies, 170 gems now installed.
Gems in the groups 'development' and 'test' were not installed.
Bundled gems are installed into `./vendor/bundle`
I, [2023-12-06T20:30:38.029906 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'LOAD_PLUGINS=0 bundle exec rake plugin:pull_compatible_all'
I, [2023-12-06T20:30:42.946058 #1]  INFO -- : docker_manager is already at latest compatible version

I, [2023-12-06T20:30:42.947529 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
I, [2023-12-06T20:30:52.368108 #1]  INFO -- : 
I, [2023-12-06T20:30:52.370735 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake themes:update assets:precompile'
Node.js heap_size_limit (488.25) is less than 1024MB. Setting --max-old-space-size=1024.
Node.js heap_size_limit (488.25) is less than 2048MB. Disabling Webpack parallelization with JOBS=0 to conserve memory.
110:M 06 Dec 2023 20:31:39.033 * 100 changes in 300 seconds. Saving...
110:M 06 Dec 2023 20:31:39.037 * Background saving started by pid 3264
3264:C 06 Dec 2023 20:31:39.055 * DB saved on disk
3264:C 06 Dec 2023 20:31:39.056 * Fork CoW for RDB: current 0 MB, peak 0 MB, average 0 MB
110:M 06 Dec 2023 20:31:39.138 * Background saving terminated with success

<--- Last few GCs --->

[3250:0x75de170]   713299 ms: Scavenge 941.1 (1032.4) -> 939.7 (1032.4) MB, 11.8 / 0.0 ms  (average mu = 0.392, current mu = 0.720) allocation failure; 
[3250:0x75de170]   713376 ms: Scavenge 941.4 (1032.4) -> 940.0 (1032.4) MB, 13.1 / 0.0 ms  (average mu = 0.392, current mu = 0.720) allocation failure; 
[3250:0x75de170]   713474 ms: Scavenge 941.9 (1032.4) -> 940.4 (1036.4) MB, 19.8 / 0.0 ms  (average mu = 0.392, current mu = 0.720) allocation failure; 
<--- JS stacktrace --->

FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
 1: 0xb83f50 node::Abort() [ember]
 2: 0xa94834  [ember]
 3: 0xd647c0 v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [ember]
 4: 0xd64b67 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [ember]
 5: 0xf42265  [ember]
 6: 0xf5474d v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [ember]
 7: 0xf2ee4e v8::internal::HeapAllocator::AllocateRawWithLightRetrySlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [ember]
 8: 0xf30217 v8::internal::HeapAllocator::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [ember]
 9: 0xf113ea v8::internal::Factory::NewFillerObject(int, v8::internal::AllocationAlignment, v8::internal::AllocationType, v8::internal::AllocationOrigin) [ember]
10: 0x12d674f v8::internal::Runtime_AllocateInYoungGeneration(int, unsigned long*, v8::internal::Isolate*) [ember]
11: 0x17035b9  [ember]
Aborted (core dumped)
error Command failed with exit code 134.
I, [2023-12-06T20:42:53.261307 #1]  INFO -- : yarn run v1.22.19
$ /var/www/discourse/app/assets/javascripts/node_modules/.bin/ember build
Building
Environment: development
WARNING: ember-test-selectors: You are using an unsupported ember-cli-babel version. data-test properties are not automatically stripped from your JS code.
building... 
...[ConfigLoader]
...[Babel: discourse-widget-hbs > applyPatches]
...[Babel: ember-source > applyPatches]
...[ember.js]
...[Babel: discourse-common > applyPatches]
...[Babel: truth-helpers > applyPatches]
...[Babel: @ember/legacy-built-in-components > applyPatches]
...[Babel: @ember/render-modifiers > applyPatches]
...[Babel: @ember/test-waiters > applyPatches]
...[Babel: @embroider/util > applyPatches]
...[Babel: dialog-holder > applyPatches]
...[Babel: ember-this-fallback > applyPatches]
...[Babel: ember-cached-decorator-polyfill > applyPatches]
...[Babel: ember-exam > applyPatches]
...[Babel: ember-functions-as-helper-polyfill > applyPatches]
...[Babel: ember-resize-observer-service > applyPatches]
...[Babel: ember-router-service-refresh-polyfill > applyPatches]
...[Babel: float-kit > applyPatches]
...[Babel: select-kit > applyPatches]
...[@embroider/compat/app]
...[@embroider/webpack]
...[@embroider/webpack]
...[@embroider/webpack]
...[@embroider/webpack]
...[@embroider/webpack]
...[@embroider/webpack]
...[@embroider/webpack]
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

I, [2023-12-06T20:42:53.304072 #1]  INFO -- : Terminating async processes
I, [2023-12-06T20:42:53.306771 #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: 41
2023-12-06 20:42:53.307 UTC [41] LOG:  received fast shutdown request
I, [2023-12-06T20:42:53.309208 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 110
110:signal-handler (1701895373) Received SIGTERM scheduling shutdown...
2023-12-06 20:42:53.311 UTC [41] LOG:  aborting any active transactions
2023-12-06 20:42:53.331 UTC [41] LOG:  background worker "logical replication launcher" (PID 50) exited with exit code 1
2023-12-06 20:42:53.335 UTC [45] LOG:  shutting down
110:M 06 Dec 2023 20:42:53.367 # User requested shutdown...
110:M 06 Dec 2023 20:42:53.369 * Saving the final RDB snapshot before exiting.
2023-12-06 20:42:53.379 UTC [41] LOG:  database system is shut down
110:M 06 Dec 2023 20:42:53.392 * DB saved on disk
110:M 06 Dec 2023 20:42:53.393 # Redis is now ready to exit, bye bye...


FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake themes:update assets:precompile' failed with return #<Process::Status: pid 3186 exit 134>
Location of failure: /usr/local/lib/ruby/gems/3.2.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"assets_precompile", "cmd"=>["su discourse -c 'bundle exec rake themes:update assets:precompile'"]}
bootstrap failed with exit code 134
** 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.
ce5db16b179d8bbe8be1cc8898c2d89a9f8259e5f4f6d6bbeda8e6fa69723aa5
==================== END REBUILD LOG ====================
Failed to rebuild app.

Checking your domain name . . .

Connection to forum.jimclair.com succeeded.
You should probably remove any non-standard plugins and rebuild.
Attempting to restart existing container. . . 
x86_64 arch detected.

+ /usr/bin/docker run --shm-size=512m -d --restart=always -e LANG=en_US.UTF-8 -e RAILS_ENV=production -e UNICORN_WORKERS=2 -e UNICORN_SIDEKIQS=1 -e RUBY_GC_HEAP_GROWTH_MAX_SLOTS=40000 -e RUBY_GC_HEAP_INIT_SLOTS=400000 -e RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR=1.5 -e DISCOURSE_DB_SOCKET=/var/run/postgresql -e DISCOURSE_DB_HOST= -e DISCOURSE_DB_PORT= -e LETSENCRYPT_DIR=/shared/letsencrypt -e DISCOURSE_FORCE_HTTPS=true -e LC_ALL=en_US.UTF-8 -e LANGUAGE=en_US.UTF-8 -e DISCOURSE_HOSTNAME=forum.jimclair.com -e DISCOURSE_DEVELOPER_EMAILS=REDACTED  -e DISCOURSE_SMTP_ADDRESS=in-v3.mailjet.com -e DISCOURSE_SMTP_PORT=587 -e DISCOURSE_SMTP_USER_NAME=495e2921d498a8d1d5ebb0afaccd7b1e -e DISCOURSE_SMTP_PASSWORD=REDACTED  -e DISCOURSE_SMTP_DOMAIN=forum.jimclair.com -e DISCOURSE_NOTIFICATION_EMAIL=noreply@forum.jimclair.com -e LETSENCRYPT_ACCOUNT_EMAIL=REDACTED  -h JimClairDiscourse-app -e DOCKER_HOST_IP=172.17.0.1 --name app -t -p 80:80 -p 443:443 -v /var/discourse/shared/standalone:/shared -v /var/discourse/shared/standalone/log/var-log:/var/log --mac-address 02:43:18:d7:5e:e0 local_discourse/app /sbin/boot
Unable to find image 'local_discourse/app:latest' locally
docker: Error response from daemon: pull access denied for local_discourse/app, repository does not exist or may require 'docker login': denied: requested access to the resource is denied.
See 'docker run --help'.
Failed to restart the container.


==================== PLUGINS ====================
          - git clone https://github.com/discourse/docker_manager.git

No non-official plugins detected.

See https://github.com/discourse/discourse/blob/main/lib/plugin/metadata.rb for the official list.

========================================
Discourse version at forum.jimclair.com: NOT FOUND
Discourse version at localhost: NOT FOUND

==================== MEMORY INFORMATION ====================
OS: Linux
RAM (MB): 998

               total        used        free      shared  buff/cache   available
Mem:             952         363         254           3         493         589
Swap:           2047          87        1960

==================== DISK SPACE CHECK ====================
---------- OS Disk Space ----------
Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1        24G  7.7G   16G  33% /

==================== DISK INFORMATION ====================
Disk /dev/loop0: 73.9 MiB, 77492224 bytes, 151352 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop1: 180.94 MiB, 189730816 bytes, 370568 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop2: 40.86 MiB, 42840064 bytes, 83672 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/vda: 25 GiB, 26843545600 bytes, 52428800 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: F62235F3-8D92-4E44-9154-0DCF72CBCB9D

Device       Start      End  Sectors  Size Type
/dev/vda1  2099200 52428766 50329567   24G Linux filesystem
/dev/vda14    2048    10239     8192    4M BIOS boot
/dev/vda15   10240   227327   217088  106M EFI System
/dev/vda16  227328  2097152  1869825  913M Linux extended boot

Partition table entries are not in disk order.


Disk /dev/vdb: 466 KiB, 477184 bytes, 932 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

==================== END DISK INFORMATION ====================

==================== MAIL TEST ====================
For a robust test, get an address from http://www.mail-tester.com/
Sending mail to REDACTED  . . 


==================== DONE! ====================

You can examine the output of this script with 
LESS=-Ri less /tmp/discourse-debug.txt

Acho que você está enfrentando problemas de memória. Como solução alternativa, você pode redimensionar temporariamente seu droplet para concluir a reconstrução e, em seguida, reduzi-lo novamente, se isso ajudar?

1 curtida

Em números redondos, você tem 1G de RAM e 2G de swap, e pelo log vemos que o Ember ficou sem memória. Você tem 16G de espaço livre em disco - sugiro adicionar um arquivo de swap de 2G e tentar novamente.

Editar: cruzado na postagem. De fato, um upgrade temporário para mais RAM é outra abordagem. Certifique-se de navegar pelo upgrade com cuidado para poder retornar à configuração mais barata - geralmente, isso significa manter o tamanho do disco o mesmo.

Editar: existem algumas configurações de kernel que você deve definir para reduzir o consumo de memória virtual. Veja
MKJ’s Opinionated Discourse Deployment Configuration

3 curtidas

Além de um arquivo de paginação normal, sugiro dar uma olhada no zram, que permite definir uma porcentagem da RAM para espaço de paginação comprimido. O pacote Debian dá a ele uma prioridade maior do que o arquivo de paginação normal, então ele efetivamente age como um arquivo de paginação intermediário muito rápido, suportado pela RAM, e a compressão transparente significa até 5x de economia de espaço (ou seja, este arquivo de paginação muito rápido pode conter até 5x o que a RAM normal normalmente conteria).

Parece contraintuitivo, mas funciona muito bem.

2 curtidas

Eu estava testando essa configuração exata (1GB RAM + 2GB SWAP) e ela falha 50% das vezes durante a fase de build do Ember.

Você pode continuar tentando ou aumentar para um droplet de $12 com 2GB de RAM.

cc @david é disso que estávamos falando no início desta semana.

6 curtidas

Linkando este similar - Upgrade from 3.2.0.beta3-dev to 3.2.0.beta3 failed due to out of memory - #9 by JammyDodger

Tive dois sites recentemente com 8GB de RAM e sem swap que falharam assim. (Pelo menos em algum lugar falhou com um exit 137). Em ambos os casos, adicionei 2GB de swap e eles funcionaram.

3 curtidas

Espero que - para mim - isso possa ser considerado um bug?