DockerでPostgreSQL環境を作る その1
今回Djangoを利用して作るサービスはDBにPostgreSQLを利用しようと思っています。
DjangoのORMを勉強する上でもDBがないと始まらないだろうと思って、先にPostgreSQLの準備をば。
1.DockerFileの作成
FROM ubuntu MAINTAINER nyorokesseki<tsufu@example.com> RUN apt-get update && apt-get -y install vim postgresql-9.3 sysv-rc-conf && sysv-rc-conf postgres on
今回あらたに「sysv-rc-conf」というのを入れてみた。
ubuntuではchkconfigが使えないみたいなのでその代わりのもの。らしい。
でも、自動起動してないきがするんだよなぁw
(追記:たぶん、「sysv-rc-conf postgresql on」こうしてないから動いてないのだと思う。)
2.とりあえずビルド
docker build -t postgresql/ubuntu:1.0 .
ここまでは特に問題なくさっくり。
3.コンテナの作成
docker run -i -t --name postgresql -v /tmp/postgresql:/app/conf -v /tmp/data/postgresql:/app/data -p 127.0.0.1:5432:5432 postgresql/ubuntu:1.0 /bin/bash
ホスト側との共有ディレクトリはの設定は少しぼやかしてます。あとポートの設定も行ってます。
4.コンテナに入って色々と設定する
# posgresqlの起動 sysv-rc-confをちゃんと使えてないから手動で起動・・・・ su - postgres service postgresql start # リンクの設定 ln -s /etc/postgresql/9.3/main /app/conf ln -s /var/lib/postgresql/9.3/main /app/data
psコマンドでもポスグレがちゃんと動いてたので、とりあえずは出来たかな?
まだパスワードの設定と疎通確認ができてないので、続きはまた今度。
Dockerのコンテナを作ってから色々と作業してるけど、最初からDokcerFileに記述しとけよというツッコミはなしの方向でオナシャス。