Trying to get Postgres working on a uby-rails-postgres-nginx-unicorn-512mb-nyc1-01 droplet

August 16, 2016 1.5k views
Ruby on Rails Ubuntu PostgreSQL

I am trying to get postgres working on my droplet.

If I do a port scan for the ip of 5432, it says the port is closed. If I try to access with PGAdminIII, I get an error of ‘server doesn’t listen’

If I do a psql \conninfo I get

You are connected to database “rails” as user “rails” via socket in “/var/run/postgresql” at port “5432”.

I am able to connect with psql and create a test table

rails=> create table test (test varchar (10) );
CREATE TABLE
rails=> /dt
rails-> \d
       List of relations
 Schema | Name | Type  | Owner
--------+------+-------+-------
 public | test | table | rails
(1 row)

rails->

I think the problem could be in my database.yml. Is this the correct code for production?

production:
  <<: *default
  database: rails
  username: rails
  password: <%= ENV['APP_DATABASE_PASSWORD'] %>

I’d appreciate any help in getting pg working

1 Answer

By default PostgreSQL does not listen on your droplet’s public IPs so it is not accessible from clients on different computers. This will walk you through enabling remote connections. I would caution that if you do this you should also set up a firewall to restrict access to the now public PostgreSQL service so that only the client IPs you will be using can connect.

Have another answer? Share your knowledge.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!