Acessando o banco de dados enquanto o discourse não está em execução

Perigo!!

Isso pode muito bem quebrar sua instalação, mas pode tirá-lo de uma enrascada.
Use estas instruções com muito cuidado.

Se você não conseguir executar o contêiner do discourse com ./launcher rebuild app por qualquer motivo e precisar acessar o banco de dados para resolver o problema, tente estas instruções.

A técnica usa uma imagem Docker do Postgres para acessar o volume do seu Discourse instalado. Não execute isso enquanto o Discourse estiver em execução!

Isso assume que o discourse está instalado em /var/discourse e que você sabe como operar o Postgres via linha de comando.

Altere ‘minhasenhasecreta’ para um valor mais seguro.

# Baixe a imagem correta para sua versão do Discourse.
docker pull postgres:15
        
# Inicie o contêiner e direcione-o para os arquivos locais do banco de dados.
docker run --name postgres_container -e POSTGRES_PASSWORD=minhasenhasecreta -d -p 5432:5432 -v /var/discourse/shared/standalone/postgres_data:/var/lib/postgresql/data postgres:15
        
 # Entre no contêiner
 docker exec -it postgres_container /bin/bash
        
 # Uma vez dentro do contêiner:
 su postgres
        
 # execute o cliente do banco de dados
 psql
        
 # Lixo no banco de dados como achar melhor.

# Quando terminar:
docker stop postgres_container
docker rm postgres_container
docker rmi postgres:15

Pode ser necessário reiniciar o docker antes de tentar reiniciar o discourse.

service restart docker.
2 curtidas