2016-05-06 20 views
1

私はMacでスピンアップしたUbuntu VMを持っています。 VMにはMySQLとDockerがインストールされています。私はWordpressイメージからコンテナを実行し、ホストVM上のMySQLに接続しようとしています。私は、ホストのVMと適切なユーザー、パスワードおよびデータベース名環境変数に割り当てられたIPアドレスに置き換えてきたホストのDocker WordpressコンテナをMySQLに接続できません

$ docker run --name some-wordpress -e WORDPRESS_DB_HOST=10.1.2.3:3306 \ -e WORDPRESS_DB_USER=... -e WORDPRESS_DB_PASSWORD=... -d wordpress 

:Wordpressのイメージドキュメントが使用することを言います。コンテナはアップしますが、その後しばらくした後にシャットダウンし、ドッキングウィンドウのログが表示さ:

[email protected]:/vagrant$ docker logs je-wordpress 
WordPress not found in /var/www/html - copying now... 
Complete! WordPress has been successfully copied to /var/www/html 

Warning: mysqli::mysqli(): (HY000/2002): Connection refused in - on line 10 

MySQL Connection Error: (2002) Connection refused 

Warning: mysqli::mysqli(): (HY000/2002): Connection refused in - on line 10 

MySQL Connection Error: (2002) Connection refused 

これらは、それが終了し、数回繰り返します。

これは可能でしょうか?もしそうなら、私はホストVMのIPアドレスとして何を使う必要がありますか?何か他のものを設定する必要はありますか?

+0

を実行し、あなたのVM上で 'IP addrのショーdocker0'を実行した結果とは何ですか? – johnharris85

+0

出力は次のとおりです。 '放浪する@ドッキングウィンドウ-ブログ:〜$ IP addrのショーdocker0 4:docker0: MTU 1500なqdisc NOQUEUEは午前2時42分、エーテルグループのデフォルト リンクを/ダウン状態:15:4c:20:ff brd ff:ff:ff:ff:ff:ff inet 172.17.0.1/16スコープグローバルドッカー0 valid_lft永遠にpreferred_lft forever ' –

+0

代わりに' 10.1.2.3' 172.17.0.1を使用してください)。これはdocker0ブリッジ内のホストマシンのIPです(デフォルトでコンテナが置かれています)。 @bartimarが答えていることのいくつかを行う必要があるかもしれませんが、まずこれを試してください。 – johnharris85

答えて

1

あなたはそのmysqlにデフォルト設定があると仮定します。

異なるネットワークからmysqlに接続しようとしています。これは、mysqlのデフォルトでは禁止されています。

のMySQLの設定を探します。 ​​

grep skip-networking /etc/mysql/my.cnf

コメントアウトそれらの両方(#bind-address、...)、またはそれらを削除します。

MySQLのサービスを再起動

service mysql restart

ユーザーがリモートネットワークからの接続を許可します。 MySQLへ接続し、実行します。

GRANT ALL ON database.* TO [email protected]'xxx.xxx.xxx.xxx' IDENTIFIED BY 'PASSWORD';

変更データベース、ユーザー、あなたから接続しているIP、およびPASSWORDのためxxx.xxx.xxx.xxx。 IDontGiveADamnモードを有効にするための

、ちょうど

​​

+0

ありがとうございました。私はすでにユーザーに@ '%'を許可していました - これは、正しいIPアドレスとトリックを行ったバインドアドレスをコメントアウトして組み合わせたものです。 –

+0

私の答えは受け入れられているとマークしてください:) – bartimar

+1

私は受け入れられたとマークしました - ありがとう –

関連する問題