Všiml jsem si několika problémů ve vašem kódu:
-
Docker-compose soubor
-
pomocí svazku ./mysql-data:/var/lib/mysql je pravděpodobnější, že se s touto chybou setkáte
[ERROR] The designated data directory /var/lib/mysql/ is unusable
změňte jej do libovolného adresáře, např.
/data/mysql
-
pravděpodobnost, že kontejner služby Java začne jako první před databázovým kontejnerem je velmi vysoká. Proto je potřeba přidat
restart-on-failure option
nebowait-for-it.sh
nebosleep option
.Tyto možnosti povolí kontejner služeb počkat na databázový kontejner začít.java: restart: on-failure
-
-
Soubor vlastností.
Soubor vlastností Java Service ukazuje na žádný kontejner existence
ms
změňte jej na
spring.datasource.url=jdbc:mysql://db:3306/fruitshop?serverTimezone=UTC
místo
spring.datasource.url=jdbc:mysql://ms:3306/fruitshop?serverTimezone=UTC
po spuštění výše uvedených změn
docker-compose up --build