読者です 読者をやめる 読者になる 読者になる

opamp_sando's blog

クソザコが割りと適当なことを書くためにある備忘録です。あとたまに普通の日記も書きます

dockerで公式のpostgresイメージを動かした

Docker postgresql

データベース系のDaemonをDocker上で動かすのはちょっと難しくてめんどくさい。
ので、公式のイメージを使ってみた。
バージョンはせっかくなので最新の9.4にしてみた。

figを使うのでfig.ymlを

postgres:
  image: postgres:9.4
  ports:
    - "5432:5432"
  volumes:
    - /var/lib/postgresql:/var/lib/postgresql
  environment:
    - POSTGRES_USER=postgres
    - POSTGRES_PASSWORD=postgres

こんな感じで書く。volumesはDockerfileに書かれてるようなので書かなくてもいいかもしれないが、一応Dockerfileと同じように書いておいた。

POSTGRES_USERとPOSTGRES_PASSWORDを設定して管理ユーザーを設定する。USERの方は指定しない場合はデフォルトでpostgresになる。
指定の際は上のようにする。シェルで指定する感覚でダブルクォートで囲んだりするとそれもパスワードになってしまうので注意。

これで

$ fig up postgres

して

$ psql -U postgres -h localhost -p 5432

でコンテナのpostgresqlに接続できる。

それにしてもDockerfileを見たら、どうやら専用スクリプトを用意しておいてコンテナ実行時にdataディレクトリが初期化されてなければ初期化するように作ってるようだ。
こういう手があるのかぁと関心した今日この頃。

Firefox ブラウザ無料ダウンロード