Quando visito https://community.ankihub.net/admin/update, vejo a seguinte mensagem:
Você está executando uma versão antiga da imagem do Discourse
Atualizações via interface web estão desabilitadas até que você execute a imagem mais recente. Para fazer isso, faça login no seu servidor usando SSH e execute:
cd /var/discourse
git pull
./launcher rebuild app
Após seguir essas instruções, recebo UPGRADE OF POSTGRES FAILED:
invoke-rc.d: não foi possível determinar o nível de execução atual
invoke-rc.d: policy-rc.d negou a execução de start.
Processando gatilhos para postgresql-common (267.pgdg120+1) ...
Construindo dicionários PostgreSQL a partir de pacotes myspell/hunspell instalados...
Removendo arquivos de dicionário obsoletos:
Parando servidor de banco de dados PostgreSQL 13: main.
Parando servidor de banco de dados PostgreSQL 15: main.
Executando verificações de consistência
-----------------------------
Verificando versões do cluster ok
Verificando se o usuário do banco de dados é o usuário de instalação ok
Verificando configurações de conexão ao banco de dados ok
Verificando transações preparadas ok
Verificando tipos compostos definidos pelo sistema em tabelas de usuário ok
Verificando tipos de dados reg* em tabelas de usuário ok
Verificando contrib/isn com incompatibilidade de passagem de bigint ok
Verificando conversões de codificação definidas pelo usuário ok
Verificando operadores de sufixo definidos pelo usuário ok
Verificando funções polimórficas incompatíveis ok
Criando dump de objetos globais ok
Criando dump de esquemas de banco de dados
*falha*
Consulte as últimas linhas de "/shared/postgres_data_new/pg_upgrade_output.d/20250129T103738.877/log/pg_upgrade_dump_16384.log" para
a causa provável da falha.
Falha, saindo
-------------------------------------------------------------------------------------
UPGRADE OF POSTGRES FAILED
Por favor, visite https://meta.discourse.org/t/postgresql-15-update/349515 para obter suporte.
Você pode executar ./launcher start app para reiniciar seu aplicativo no meio tempo
-------------------------------------------------------------------------------------
FALHA
--------------------
Pups::ExecError: if [ -f /root/install_postgres ]; then
/root/install_postgres && rm -f /root/install_postgres
elif [ -e /shared/postgres_run/.s.PGSQL.5432 ]; then
socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres já em execução, pare o container ; exit 1
fi
falhou com retorno #<Process::Status: pid 18 exit 1>
Localização 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 {"tag"=>"db", "cmd"=>"if [ -f /root/install_postgres ]; then\n /root/install_postgres && rm -f /root/install_postgres\nelif [ -e /shared/postgres_run/.s.PGSQL.5432 ]; then\n socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres já em execução, pare o container ; exit 1\nfi\n"}
bootstrap falhou com código de saída 1
Nada aqui ou neste tópico um pouco relacionado aborda meu problema, pelo que pude ver.
Aqui estão os logs de /shared/postgres_data_new/pg_upgrade_output.d/20250129T103738.877/log/pg_upgrade_dump_16384.log:
command: "/usr/lib/postgresql/15/bin/pg_dump" --host /var/lib/postgresql --port 50432 --username postgres --schema-only --quote-all-identifiers --binary-upgrade --format=custom --file="/shared/postgres_data_new/pg_upgrade_output.d/20250129T103738.877/dump/pg_upgrade_dump_16384.custom" 'dbname=discourse' >> "/shared/postgres_data_new/pg_upgrade_output.d/20250129T103738.877/log/pg_upgrade_dump_16384.log" 2>&1
pg_dump: erro: consulta falhou: ERRO: não foi possível acessar o arquivo "$libdir/vector": Arquivo ou diretório não encontrado
pg_dump: detalhe: A consulta foi: SELECT t.tableoid, t.oid, i.indrelid, t.relname AS indexname, pg_catalog.pg_get_indexdef(i.indexrelid) AS indexdef, i.indkey, i.indisclustered, c.contype, c.conname, c.condeferrable, c.condeferred, c.tableoid AS contableoid, c.oid AS conoid, pg_catalog.pg_get_constraintdef(c.oid, false) AS condef, (SELECT spcname FROM pg_catalog.pg_tablespace s WHERE s.oid = t.reltablespace) AS tablespace, t.reloptions AS indreloptions, i.indisreplident, inh.inhparent AS parentidx, i.indnkeyatts AS indnkeyatts, i.indnatts AS indnatts, (SELECT pg_catalog.array_agg(attnum ORDER BY attnum) FROM pg_catalog.pg_attribute WHERE attrelid = i.indexrelid AND attstattarget >= 0) AS indstatcols, (SELECT pg_catalog.array_agg(attstattarget ORDER BY attnum) FROM pg_catalog.pg_attribute WHERE attrelid = i.indexrelid AND attstattarget >= 0) AS indstatvals, false AS indnullsnotdistinct FROM unnest('{16805,16813,16823,16835,16846,16858,16940,16948,16963,16973,16996,17006,17029,17061,17071,17085,17095,17101,17112,17136,17151,17159,17168,17266,17280,17321,17334,17345,17354,17368,17382,17398,17412,17420,17428,17519,17532,17543,17562,17570,17620,17687,17710,17724,17738,17754,17775,17788,17803,17824,17851,17864,17898,17917,17932,17944,17958,17980,17993,18006,18019,18030,18041,18055,18069,18092,18101,18134,18145,18166,18177,18214,18241,18263,18276,18298,18324,18338,18358,18368,18403,18426,18449,18458,18470,18496,18510,18525,18534,18543,18569,18596,18607,18625,18643,18655,18663,18676,18686,18698,18710,18719,18734,18742,18757,18768,18786,18798,18802,18806,18846,18864,18879,18891,18910,18920,18932,18946,18988,19003,19014,19039,19059,19073,19085,19097,19103,19116,19140,19192,19206,19227,19250,19266,19300,19309,19328,19343,19354,19367,19389,19402,19417,19430,19497,19521,19544,19559,19569,19597,19605,19637,19687,19703,19721,19742,19771,19807,19821,19830,19839,19862,19874,19890,19904,19917,19932,19942,19951,19960,19981,20005,20021,20044,20052,20061,20073,20082,20133,20146,20157,20178,20191,20203,20217,20231,20263,20276,20297,20309,20320,28805,28951,28964,28976,28986,28997,32824,32833,32843,32852,32862,32875,32887,32899,32910,32930,32967,35131,35141,38401,38413,38437,38445,38461,38482,38495,42870,46125,46138,130133,191445,191457,191471,191486,191497,191603,191637,243875,606663,606675,606693,606707,779182,779197,779213,779225,779237,779252,779265,968985,968993,969004,969017,969027,1004239,1004251,1004263,1004276,1004295,1091838,1091849,1091860,1336877,1336884,1336891,1566392,2169846,2169852,2169858,2169864,2169870,2169876,2169882,2169888,2169894,2169900,2169906,2169912,2169918,2169924,2169930,2169936,2169942,2169948,2169954,2169960,2169966,2169972,2169978,2169984}'::pg_catalog.oid[]) AS src(tbloid)
JOIN pg_catalog.pg_index i ON (src.tbloid = i.indrelid) JOIN pg_catalog.pg_class t ON (t.oid = i.indexrelid) JOIN pg_catalog.pg_class t2 ON (t2.oid = i.indrelid) LEFT JOIN pg_catalog.pg_constraint c ON (i.indrelid = c.conrelid AND i.indexrelid = c.conindid AND c.contype IN ('p','u','x')) LEFT JOIN pg_catalog.pg_inherits inh ON (inh.inhrelid = indexrelid) WHERE (i.indisvalid OR t2.relkind = 'p') AND i.indisready ORDER BY i.indrelid, indexname
/shared/postgres_data_new/pg_upgrade_output.d/20250129T103738.877/log/pg_upgrade_dump_16384.log
Aqui está a saída de ./discourse-doctor:
Saída de ./discourse-doctor
DISCOURSE DOCTOR Qua 29 Jan 2025 10:39:42 AM UTC
SO: Linux forum 5.4.0-48-generic #52-Ubuntu SMP Thu Sep 10 10:58:49 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Encontrado containers/app.yml
==================== CONFIGURAÇÕES YML ====================
DISCOURSE_HOSTNAME=community.ankihub.net
SMTP_ADDRESS=smtp.mailgun.org
DEVELOPER_EMAILS=REDACTED
SMTP_PASSWORD=REDACTED
SMTP_PORT=587
SMTP_USER_NAME=postmaster@mg.ankihub.net
LETSENCRYPT_ACCOUNT_EMAIL=REDACTED
==================== INFORMAÇÕES DO DOCKER ====================
VERSÃO DO DOCKER: Docker version 27.2.1, build 9e34c9b
PROCESSOS DO DOCKER (docker ps -a)
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
37e2430e1014 local_discourse/app "/sbin/boot" 4 meses atrás Up 33 segundos 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp app
260f4c0ed417 local_discourse/mail-receiver "/sbin/boot" 20 meses atrás Up 4 meses 0.0.0.0:25->25/tcp, :::25->25/tcp mail-receiver
O container Discourse app está em execução
==================== PLUGINS ====================
- git clone https://github.com/discourse/docker_manager.git
- git clone https://github.com/discourse/discourse-assign.git
- git clone https://github.com/discourse/discourse-templates.git
- git clone https://github.com/discourse/discourse-solved.git
- git clone https://github.com/discourse/discourse-reactions.git
- git clone https://github.com/discourse/discourse-chat-integration.git
- git clone https://github.com/discourse/discourse-code-review.git
- git clone https://github.com/discourse/discourse-topic-voting.git
- git clone https://github.com/discourse/discourse-automation.git
- git clone https://github.com/discourse/discourse-bbcode-color.git
- git clone https://github.com/discourse/discourse-data-explorer.git
- git clone https://github.com/discourse/discourse-docs.git
- git clone https://github.com/discourse/discourse-ai.git
- git clone https://github.com/discourse/discourse-jira.git
Nenhum plugin não oficial detectado.
Veja https://github.com/discourse/discourse/blob/main/lib/plugin/metadata.rb para a lista oficial.
========================================
Versão do Discourse em community.ankihub.net: Discourse 3.4.0.beta2
Versão do Discourse em localhost: Discourse 3.4.0.beta2
==================== INFORMAÇÕES DE MEMÓRIA ====================
SO: Linux
RAM (MB): 4127
total used free shared buff/cache available
Mem: 3936 1567 158 274 2209 1802
Swap: 2047 67 1980
==================== VERIFICAÇÃO DE ESPAÇO EM DISCO ====================
---------- Espaço em disco do SO ----------
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 78G 50G 28G 65% /
---------- Espaço em disco do container ----------
Filesystem Size Used Avail Use% Mounted on
overlay 78G 50G 28G 65% /
/dev/vda1 78G 50G 28G 65% /shared
/dev/vda1 78G 50G 28G 65% /var/log
==================== INFORMAÇÕES DO DISCO ====================
Disco /dev/loop0: 55.68 MiB, 58363904 bytes, 113992 setores
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
Disco /dev/loop1: 91.85 MiB, 96292864 bytes, 188072 setores
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
Disco /dev/loop2: 63.71 MiB, 66789376 bytes, 130448 setores
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
Disco /dev/loop3: 63.10 MiB, 67080192 bytes, 131016 setores
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
Disco /dev/loop4: 44.45 MiB, 46596096 bytes, 91008 setores
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
Disco /dev/loop5: 91.9 MiB, 96346112 bytes, 188176 setores
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
Disco /dev/loop7: 44.3 MiB, 46448640 bytes, 90720 setores
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
Disco /dev/vda: 80 GiB, 85899345920 bytes, 167772160 setores
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 de disco: gpt
Identificador do disco: 2ED04D82-BA1D-4A75-86B9-9553B7EA5228
Device Start End Sectors Size Type
/dev/vda1 227328 167772126 167544799 79.9G Linux filesystem
/dev/vda14 2048 10239 8192 4M BIOS boot
/dev/vda15 10240 227327 217088 106M Microsoft basic data
As entradas da tabela de partição não estão na ordem do disco.
Disco /dev/loop8: 55.37 MiB, 58052608 bytes, 113384 setores
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
==================== FIM DAS INFORMAÇÕES DO DISCO ====================
==================== TESTE DE E-MAIL ====================
Para um teste robusto, obtenha um endereço em http://www.mail-tester.com/
Teste de e-mail pulado.
==================== CONCLUÍDO! ====================
Esperando que alguém possa me apontar na direção certa. Obrigado!