J'ai remarqué quelques problèmes sur votre code :
-
Fichier Docker-compose
-
en utilisant le volume ./mysql-data:/var/lib/mysql vous êtes plus susceptible de rencontrer cette erreur
[ERROR] The designated data directory /var/lib/mysql/ is unusablechangez-le dans n'importe quel répertoire, par exemple
/data/mysql -
la probabilité que le conteneur de services Java commencera avant le conteneur de base de données est très élevé. Il est donc nécessaire d'ajouter l'option
restart-on-failure optionouwait-for-it.shousleep option.Ces options activeront le conteneur de services attendre le conteneur de la base de données pour commencer.java: restart: on-failure
-
-
Fichier de propriétés.
Le fichier de propriétés du service Java ne pointe vers aucun conteneur d'existence
mschangez-le en
spring.datasource.url=jdbc:mysql://db:3306/fruitshop?serverTimezone=UTCau lieu de
spring.datasource.url=jdbc:mysql://ms:3306/fruitshop?serverTimezone=UTC
après l'exécution des modifications ci-dessus
docker-compose up --build