Spring Boot、Hibernate、MySQL Docker セットアップでの 「通信リンク障害」エラーの修正**
Hibernate で Spring Boot アプリケーションを実行しているときDocker 化環境の MySQL では、JDBC URL のローカルホスト参照が原因で「通信リンク障害」エラーが発生する可能性があります。この問題に対処する方法は次のとおりです。
問題:
アプリケーション コード内の JDBC URL がデータベース ホストとして「localhost」を参照しているためにエラーが発生します。ただし、Docker セットアップでは、MySQL データベースは異なる IP アドレスを持つ別のコンテナーで実行されています。
解決策:
この問題を解決するには、JDBC を更新します。 "localhost" の代わりに MySQL コンテナーの名前を指す docker-compose.yml ファイル内の URL:
docker-compose.yml
version: '3' services: docker-mysql: image: mysql:5.7 environment: - MYSQL_ROOT_PASSWORD=root - MYSQL_DATABASE=database - MYSQL_USER=root - MYSQL_PASSWORD=root ports: - 3307:3306 app: image: app:latest ports: - 8091:8091 environment: SPRING_DATASOURCE_URL: jdbc:mysql://docker-mysql:3306/database?autoReconnect=true&useSSL=false depends_on: - docker-mysql
説明:
更新された docker-compose.yml ファイルでは、「app」コンテナーの SPRING_DATASOURCE_URL 環境変数が、「docker-mysql」という名前で MySQL コンテナーを参照するように設定されています。これにより、アプリケーションが MySQL データベース コンテナに正しく接続できるようになります。
以上がSpring Boot、Hibernate、MySQL Docker の使用時に発生する「通信リンク障害」エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。