Ruby on Rails / PostgreSQL / Sidekiq プロジェクト用に Bitbucket Pipelines で継続的デプロイをセットアップしたいのですが、どのようにすべてを適合させるか、具体的には Docker イメージ内で postgres を動作させる方法を理解するのに苦労しています. 私はDockerとパイプラインに非常に慣れていません。
私のグーグルでは、Docker は docker-compose を使用してバンドルを作成することについて話しているので、Postgres コンテナーと Sideqik コンテナーを用意し、それらをアプリ コンテナーにリンクします。しかし、バンドルとイメージの違いと、Bitbucket Pipelines がバンドルをサポートしているかどうかはわかりません。最終的には、Heroku のステージング環境へのデプロイをセットアップしたいと考えていますが、今のところrspec spec
、Pipelines で作業できるようになるだけでもよいでしょう。
Ruby + PostgreSQL が既にセットアップされている、使用できる既存のパブリック イメージはありますか? そうでない場合は、どこから始めればよいですか? 現在の Dockerfile は次のようになります。
FROM postgres:9.4
FROM ruby:2.3.1-onbuild
RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs postgresql-client
docker build .
そしてdocker run -it my-image /bin/bash
、次のコマンドを実行します。
root@a84ad0e7c16b:/usr/src/app# postgres
bash: postgres: command not found
root@a84ad0e7c16b:/usr/src/app# psql
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?