Estou tentando configurar o Discourse em meu ambiente de desenvolvimento local com apenas uma pequena diferença: estou executando o Postgres no Docker.
O banco de dados é acessível usando psql do sistema operacional, mas quando tentei criar o banco de dados usando rake ou rails, não funcionou. Segui estes passos:
connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory
Is the server running locally and accepting connections on that socket?
Couldn't create 'discourse_development' database. Please check your configuration.
rails aborted!
ActiveRecord::NoDatabaseError: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory
Is the server running locally and accepting connections on that socket?
Caused by:
PG::ConnectionBad: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory
Is the server running locally and accepting connections on that socket?
Tasks: TOP => db:create
(See full trace by running task with --trace)
Não tenho certeza, mas acho que o problema provavelmente é que o Discourse está rodando dentro de um contêiner Docker e, portanto, não pode acessar seu contêiner PostgreSQL separado por padrão.
O Discourse não está rodando dentro de um contêiner Docker, está rodando no meu sistema operacional. O Postgres está rodando dentro de um contêiner, e eu expus sua porta para o sistema operacional -p 5432:5432.
Olá @Falco
obrigado pela sua resposta.
Mesma coisa
conexão com o servidor no socket "/var/run/postgresql/.s.PGSQL.5432" falhou: Nenhum arquivo ou diretório encontrado
O servidor está em execução localmente e aceitando conexões nesse socket?
Não foi possível criar o banco de dados 'discourse_development'. Verifique sua configuração.
rails abortou!
ActiveRecord::NoDatabaseError: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory
O servidor está em execução localmente e aceitando conexões nesse socket?
Causado por:
PG::ConnectionBad: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: No such file or directory
O servidor está em execução localmente e aceitando conexões nesse socket?
Tarefas: TOP => db:create
(Veja o rastreamento completo executando a tarefa com --trace)
Não, isso apenas significa que o socket padrão tem prioridade sobre a declaração port. Uma maneira de contornar isso é usar a chave url, mas você pode verificar o código do Rails para ver outras maneiras.