コードにいくつかの問題があることに気づきました:
-
Docker-ファイルを作成
-
ボリュームを使用する./mysql-data:/ var / lib / mysql このエラーが発生する可能性が高くなります
[ERROR] The designated data directory /var/lib/mysql/ is unusable
/data/mysql
などの任意のディレクトリに変更します -
Javaサービスコンテナの確率 データベースコンテナの前に最初に開始します 非常に高いです。したがって、
restart-on-failure option
を追加する必要があります またはwait-for-it.sh
またはsleep option
。これらのオプションにより、サービスコンテナが有効になります データベースコンテナを待つ 開始します。java: restart: on-failure
-
-
プロパティファイル。
Javaサービスプロパティファイルが存在しないコンテナ
ms
を指しているに変更します
spring.datasource.url=jdbc:mysql://db:3306/fruitshop?serverTimezone=UTC
代わりに
spring.datasource.url=jdbc:mysql://ms:3306/fruitshop?serverTimezone=UTC
上記の変更が実行された後
docker-compose up --build