I have created a simple spring boot app to communicate with MYSQL via docker using the same network. Once I run docker-compose up
command then following errors have occurred
employee-jdbc-container | java.sql.SQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.
employee-jdbc-container | Caused by: com.mysql.cj.exceptions.UnableToConnectException: Public Key Retrieval is not allowed
docker-compose.yml
version: "3"
services:
employee-mysql:
image: employee-jdbc
container_name: employee-jdbc-container
ports:
- "9090:9090"
networks:
- employee-mysql2
depends_on:
- mysqldb
mysqldb:
image: mysql:8
container_name: mysqldb
ports:
- "3306:3306"
networks:
- employee-mysql2
environment:
- MYSQL_USER=root
- MYSQL_ROOT_PASSWORD=root
- MYSQL_DATABASE=HR
networks:
employee-mysql2:
application.yml
server:
port: 9090
spring:
datasource:
url: "jdbc:mysql://mysqldb:3306/HR?createDatabaseIfNotExists=true&autoReconnect=true&useSSL=false"
username: root
password: root
platform: mysql
initialization-mode: always
driver-class-name: com.mysql.cj.jdbc.Driver
jpa:
database-platform: org.hibernate.dialect.MySQL8Dialect
I think the problem in the configuration file but have no idea what is wrong.