はじめに
前回記事で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の設定を行いました。
振り返ってみたいと思います。
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
...
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でアクセスを試みます。
が、なぜか素直に入力するとアクセスできません。
ここでは、docker-compose.ymlとdatabase.ymlで指定したHostであるpostgres
でアクセスしようとするとなぜかエラーが出ます。
そこで、下記のようにHost名をlocalhost
にしてアクセスしてみます。
すると、アクセスできました!!!
この理由についてはもっと勉強して判明すれば追記したいと思います。
理由がわかる方はご教示いただければ幸いです。
操作方法については、@junara様のこの記事がとてもわかりやすいです。
今回はここまでにしたいと思います。
ここまでくれば、サクサクローカル開発を進めることができますね。
頑張ります。