LoginSignup
0
0

More than 3 years have passed since last update.

Docker+PostgreSQLで立ち上げたDBにPosticoでアクセスする

Posted at

はじめに

前回記事でRails+PostgreSQL+docker-composeででローカル環境構築を行いました。

前回記事-> https://qiita.com/Rick516/items/c9e829f48f3ee0be26df

今回は前回記事で立ち上げたDBにPosticoというツールで操作できるようにしたいと思います。

環境

  • macOS Catalina 10.15.4
  • ruby 2.6.3
  • rails 2.5.3
  • docker for mac 2.2.0.4
  • PostgreSQL 12.2

Posticoとは?

Posticoは簡単にいうとPostgreSQLをGUIで直感的に操作できるツールです。

ぽちぽち入力していくだけでデータを追加できたり、コピーできたり、書き換えられたりできるので最高に便利です。

インストールはこちら -> https://eggerapps.at/postico/

今回は前回記事(https://qiita.com/Rick516/items/c9e829f48f3ee0be26df)で立ち上げたDBを題材とします。

前回立ち上げたDB

前回docker-composeでDBの設定を行いました。

振り返ってみたいと思います。

docker-compose.yml
version: '3'
services:
  postgres:
    image: postgres
    ports:
      - "5432:5432"
    volumes:
      - ./tmp/db:/var/lib/postgresql/data #MacOSの場合
    environment:
      POSTGRES_USER: 'admin'
      POSTGRES_PASSWORD: 'admin-pass'
      POSTGRES_HOST: 'postgres'
      POSTGRES_PORT: 5432
    restart: always
  web:
    build: .
    image: rails
    container_name: 'web'
    command: bundle exec rails s -p 3000 -b '0.0.0.0'
    ports:
      - "3000:3000"
    environment:
      VIRTUAL_PORT: 3000
    volumes:
      - .:/app
    depends_on:
      - postgres
    restart: always

./config/database.yml
...
default: &default
  adapter: postgresql
  encoding: unicode
  # For details on connection pooling, see Rails configuration guide
  # http://guides.rubyonrails.org/configuring.html#database-pooling
  pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
  username: admin #追加
  password: admin-pass #追加
  host: postgres #追加
...

これらの情報を元にDBが立ち上がっているわけですね。

Posticoでアクセスしてみる

Posticoでアクセスを試みます。

が、なぜか素直に入力するとアクセスできません。

Screen Shot 2020-04-20 at 18.30.54.png

ここでは、docker-compose.ymlとdatabase.ymlで指定したHostであるpostgresでアクセスしようとするとなぜかエラーが出ます。
Screen Shot 2020-04-20 at 18.33.10.png

そこで、下記のようにHost名をlocalhostにしてアクセスしてみます。

Screen Shot 2020-04-20 at 18.06.40.png

すると、アクセスできました!!!

この理由についてはもっと勉強して判明すれば追記したいと思います。

理由がわかる方はご教示いただければ幸いです。

Screen Shot 2020-04-20 at 18.35.25.png

操作方法については、@junara様のこの記事がとてもわかりやすいです。

今回はここまでにしたいと思います。

ここまでくれば、サクサクローカル開発を進めることができますね。

頑張ります。

参考記事

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0