Jeg har bemærket et par problemer med din kode:
-
Docker-compose-fil
-
bruger volumen ./mysql-data:/var/lib/mysql du er mere tilbøjelig til at støde på denne fejl
[ERROR] The designated data directory /var/lib/mysql/ is unusable
ændre det til en hvilken som helst mappe, f.eks.
/data/mysql
-
sandsynligheden for, at Java-tjenestebeholder starter først før databasebeholder er meget høj. Derfor er der behov for at tilføje
restart-on-failure option
ellerwait-for-it.sh
ellersleep option
.Disse muligheder vil aktivere servicecontainer at vente på databasebeholder for at starte.java: restart: on-failure
-
-
Egenskabsfil.
Java Service-egenskabsfilen peger på ingen eksistensbeholder
ms
ændre det til
spring.datasource.url=jdbc:mysql://db:3306/fruitshop?serverTimezone=UTC
i stedet for
spring.datasource.url=jdbc:mysql://ms:3306/fruitshop?serverTimezone=UTC
efter ovenstående ændringer køres
docker-compose up --build