docker上で動作するphpからmysqlへの接続の解決策、表示(HY000/2002)。接続が拒否されました
2022-02-11 08:46:59
-
phpはdockerで動作しているmysqlにlocalhostの127.0.0.1で接続できません。これは、dockerで動作している各コンテナのlocalhost 127.0.0.1 がmysqlコンテナではなくそれ自身のコンテナになっており、親IP、またはmysqlコンテナ名への変更が必要であるためです。
-
例えば、以下のようなdocker-compose.ymlがあります。
version: '3'
services:
mysql:
# build: . /mysql
image: daocloud.io/library/mysql:5.7.20
volumes:
- . /mysql/conf:/etc/mysql
- . /mysql/data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=root
ports:
- "3306:3306"
networks:
- lnmp
php54:
build: . /php54
# # Use the HOST:CONTAINER format or just specify the port of the container (the host will choose the port at random)
# Open port 9000
ports:
- "9005:9000"
# # This implements the folder code directory mapping
volumes:
- ... /:/data
- . /php54/hosts:/etc/hosts
- . /php54/etc/php/php.ini:/usr/local/etc/php/php.ini
- . /php54/etc/php-fpm.conf:/usr/local/etc/php-fpm.conf
links:
- mysql
privileged: true
networks:
- lnmp
nginx:
build: . /nginx
# This implements the folder code directory mapping
volumes:
- ... /:/data
- . /php54/hosts:/etc/hosts
links:
- php54:php54
privileged: true
ports:
- "80:80"
networks:
- lnmp
networks:
lnmp:
driver: bridge
- phpのアドレスはmysqlで、localhostや127.0.0.1でなくても接続できる。
参考にしてください。
関連
-
[解決済み】FrontEnd DockerFIle.v0との解決に失敗しました。
-
[解決済み】Dockerエラー:無効な参照形式:リポジトリ名は小文字でなければならない
-
[解決済み】apt-get でインストールしても docker コマンドが見つからない。
-
[解決済み】Docker: apt-utilsのインストールに問題があります。
-
[解決済み】docker: ドライバがエンドポイントウェブサーバの外部接続のプログラミングに失敗しました。
-
[解決済み] Docker Networking が無効になっています。警告: IPv4 転送が無効になっています。ネットワーキングは機能しません
-
[解決済み] docker run --initに相当するdocker-composeは何ですか?
-
docker 環境に opencv をインストールします ImportError: libGL.so.1: cannot open shared object file: そのようなファイルやディレクトリはありません
-
企業向けWeChatアラート監視のためのPrometheus+Grafana+AlertmanagerのDockerインストール
-
DockerのインストールとRocketMQの利用について
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】ドッカーコンテナがすぐに終了してしまう理由
-
[解決済み] Docker - コンテナが実行されていません
-
[解決済み] docker: ドライバがエンドポイントウェブサーバの外部接続のプログラミングに失敗しました。
-
[解決済み] ドッカーコンテナ : iptables を実行中です。その名前のチェーン/ターゲット/マッチがない
-
[解決済み] dockerでCOPYするが、除外する
-
[解決済み] docker の多段ビルド Go イメージ - x509: 証明書は不明な機関によって署名されました。
-
Http: サーバーが HTTPS クライアントに HTTP 応答を返した 解決策
-
docker サーバーが HTTPS クライアントに HTTP 応答を返した
-
httpコード中にdocker registry apiのインタラクションを呼び出す コード詳細
-
bashでの解決方法 : docker :コマンドが見つかりません。