Tentei atualizar via admin, não tenho certeza do que aconteceu, mas as páginas de admin ficaram em branco enquanto o front estava ok. Decidi fazer a atualização novamente via linha de comando e recebi este erro
Errno::ENOENT: No such file or directory @ rb_sysopen - /etc/postgresql/15/main/postgresql.conf
cd /var/discourse; ./launcher rebuild app
x86_64 arch detected.
Ensuring launcher is up to date
Fetching origin
Launcher is up-to-date
2.0.20240708-0023: Pulling from discourse/base
Digest: sha256:025e9c1f68
Status: Image is up to date for discourse/base:2.0.20240708-0023
docker.io/discourse/base:2.0.20240708-0023
/usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups.rb
/usr/local/bin/pups --stdin
I, [2025-02-06T20:57:43.044950 #1] INFO -- : Reading from stdin
I, [2025-02-06T20:57:43.066724 #1] INFO -- : File > /etc/service/postgres/run chmod: +x chown:
I, [2025-02-06T20:57:43.072432 #1] INFO -- : File > /etc/service/postgres/log/run chmod: +x chown:
I, [2025-02-06T20:57:43.077790 #1] INFO -- : File > /etc/runit/3.d/99-postgres chmod: +x chown:
I, [2025-02-06T20:57:43.083299 #1] INFO -- : File > /root/install_postgres chmod: +x chown:
I, [2025-02-06T20:57:43.087962 #1] INFO -- : File > /root/upgrade_postgres chmod: +x chown:
FAILED
--------------------
Errno::ENOENT: No such file or directory @ rb_sysopen - /etc/postgresql/15/main/postgresql.conf
Location of failure: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/replace_command.rb:11:in `read'
replace failed with the params {"filename"=>"/etc/postgresql/15/main/postgresql.conf", "from"=>"data_directory = '/var/lib/postgresql/15/main'", "to"=>"data_directory = '/shared/postgres_data'"}
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.
Acabei de tentar atualizar outra instância em outro servidor e funcionou. Ambos os servidores são droplets DO com as mesmas especificações.
Não tenho certeza do que está acontecendo.
Essa é uma imagem Docker muito mais antiga que não tem os pacotes do PostgreSQL 15 instalados, daí o erro:
Seu arquivo launcher provavelmente foi modificado e travado para usar essa imagem Docker mais antiga acima. Você pode alterá-lo para a imagem mais recente destacada abaixo e tentar reconstruir novamente. (Faça os backups necessários antes.)
No entanto, durante a reconstrução, ele ainda está pegando a imagem antiga, então de onde essa imagem antiga está sendo retirada? Como posso verificar isso?