技術系ブログ

とにかく小ネタで

【rails】dockerでのDB(postgersql)操作

dockerでの開発環境を構築し、DBにpostgresqlを使いました。今回はDBにアクセスしてテーブル内容の確認をメモしておきます。

まずは立ち上げる

docker-compose up -d
終了は
docker-compose down
参考: docker-compose コマンド — Docker-docs-ja 1.10.0b ドキュメント

DBに接続

$ docker-compose exec db psql -d database -U username -h host
-d: データベース名(未指定だと、ログインユーザー名のデータベースに接続する)
-U: ユーザ名(未指定だと、ログインユーザー名になる)
-h: ホスト名(未指定だと、localhostになる)

上記の内容はconfig/databese.ymlから参考にする
私の場合は、

default: &default
  adapter: postgresql
  encoding: UTF8
  host: db
  username: postgres
  password:
  pool: 5

development:
  <<: *default
  database: myapp_development

なので
$ docker-compose exec db psql -d myapp_development -U postgres -h db です。
そうすると
myapp_development=#と出てくるのでそのまま操作します。
終了はexitまたは\qです。

postgresql操作コマンド

データーベース一覧表示
postgres=# \l
テーブル一覧を表示
postgres=# \z
テーブル定義を確認
postgres=# \d tablename
tablenameには任意のテーブル名を入れる。

以上です

参考: docker-composeコマンド - Qiita
PostgreSQLコマンドチートシート - Qiita