Dockerを使用する既存のRailsプロジェクトで作業を開始します。私は長い間レールを使用しましたが、ドッカーは使用しませんでした。「ドッカーアップ」をしようとすると「致命的:ロール」ルートが存在しません
私はdocker build .
を実行した後、私はdocker-compose up
をしようが、私は得る:
FATAL:役割 "ルート" は /usr/local/bundle/gems/activerecord-4.2.5.2存在しませんFATAL:: `接続での救助" /lib/active_record/connection_adapters/postgresql_adapter.rb:661:in役割は "root"(ActiveRecordは:: NoDatabaseError)が存在しない
ドッカーマシンがあるように私には思えますおそらくroot
ユーザーとしてデータベースに接続しようとしていますが、という役割はありません、接続が正しく失敗しています。
Dockerが明らかにデータベースに接続しようとしているのは、root
と、正しいユーザーを使用する方法です。
development:
database: my_app_development
adapter: postgresql
encoding: unicode
pool: 5
すべてのヘルプは高く評価されています
は、ここに私のdatabase.yml
です。
編集:ここに私のdocker-compose.yml
です:
web:
build: .
volumes:
- .:/my_app
ports:
- "3000:3000"
links:
- postgres
- redis
- mailcatcher
env_file:
- 'config/application.yml'
postgres:
image: postgres:9.4
ports:
- "5432"
env_file:
- 'config/database.yml'
redis:
image: redis:3.0.6
mailcatcher:
image: schickling/mailcatcher
ports:
- "1080:1080"
どのようにあなたのドッキングウィンドウ-compose.ymlがどのように見えるのでしょうか?ポストグルのために別の容器を使用していますか? –
ちょっとレカン!私は 'docker-compose.yml'を含むように私の答えを編集しました。 PostgreSQL用に別のコンテナを使用しているかどうかを知る方法はわかりません。 –
Yea Jase!だから、docker-compose.ymlから別のコンテナを使用しているようです。あなたがpostgres用のenv varsを使って作成ファイルを更新すると思います。 –