você precisa alterar sua conexão assim:
jdbc:mysql://database:3306/db_example
e adicione isso ao seu docker-compose em
springapi
serviço:links:
- database
por outro lado, você pode usar wait- for-it.sh para verificar se o banco de dados está ativo, adicione uma seção de comando em
springapi
serviço:command: ["path/to/wait-for-it.sh", "database:3306", "-t", "6000", "--", "YOUR ACTUAL COMMAND"]