2017-03-29 13 views
0

ドッカーでgrailsアプリケーションを実行しようとしていて、いくつかのmysql接続の問題が続いています。問題がどこにあるのか分かりません。grails/mysql with docker

これは、Grailsのアプリは、次のエラーで起動しない

version: "2" 
    services: 
     db: 
     image: mysql:5.7 
     volumes: 
     - db_data:/var/lib/mysql 
     restart: always 
     environment: 
      MYSQL_ROOT_PASSWORD: root2017 
      MYSQL_DATABASE: dbname 
      MYSQL_USER: Dbuser 
      MYSQL_PASSWORD: passw 
grails: 
    depends_on: 
    - db 
    ports: 
    - "9001:9001" 
    restart: always 
    environment: 
    DB_HOST: db:3306 
    DB_PASSWORD: passw 
volumes: 
    db_data: 

私のドッキングウィンドウ・コンファイルです:

ERROR午後6時08分05秒org.apache.tomcat.jdbc.pool.ConnectionPool - プールの初期接続を作成できません。 grails_1 | com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:あなたは本番のenvのための外部設定ファイルでこれを行うことができます"jdbc:mysql://db:3306/dbname"

を指すようにデータソースを設定する必要がありますコミュニケーションズリンク障害

+0

の可能性のある重複した[どのように私は私のドッキングウィンドウのmysqlのコンテナがアップしているとMySQLがクエリを取るための準備ができたときに知っているのですか?](http://stackoverflow.com/questions/25503412/how-do- mysql-container-up-and-mysql-ready-for-take) – nwinkler

+0

これは、Javaアプリケーションが起動する時点でデータベースが利用できないことが原因と考えられます。リンクされた質問を見てください、それはデータベースがアップするのを待つためのいくつかの解決策が含まれています。私はこの目的のためにhttps://github.com/vishnubob/wait-for-itを使います。 – nwinkler

+0

ありがとうございましたが、私の問題は、新しいパスワードを設定するためにボリュームを削除しなければならなかったボリュームにマウントされているため、作成ファイルのパスワードを変更したことでした。 – Torsten

答えて

関連する問題