Im trying to dockerize by project, but when i try to run docker-compose up, my database gets failure with errror: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure. I've tried many sollutions, and none was working.
My docker-compose.yml file:
version: "3"
services:
database:
platform: linux/x86_64
container_name: 'mysql'
image: mysql:latest
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_PASSWORD: p@ssword
MYSQL_USER: testUser
MYSQL_DATABASE: testDatabase
ports:
- "3306:3306"
networks:
- mysql-db
maildev:
image: maildev/maildev
ports:
- "1080:80"
web:
build: .
ports:
- "8080:8080"
networks:
- mysql-db
depends_on:
- database
environment:
SPRING_DATASOURCE_PASSWORD: p@ssword
SPRING_DATASOURCE_USER: testUser
SPRING_DATASOURCE_NAME: testDatabase
SPRING_DATASOURCE_URL: jdbc:mysql://database:3306/testDatabase
links:
- database
networks:
mysql-db:
driver: bridge
And my application.properties file:
spring.datasource.password=p@ssword
spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://database:3306/testDatabase
spring.datasource.username=testUser
spring.mail.host=localhost
spring.mail.port=1025
spring.mail.username=hello
spring.mail.password=hello
spring.jpa.hibernate.ddl-auto=create
spring.jpa.properties.show_sql=true
spring.jpa.properties.format_sql=true
spring.jpa.logging.level.org.hibernate.type=trace
spring.jpa.logging.level.org.hibernate.dialect=org.hibernate.dialect.H2Dialect
spring.jpa.logging.mail.smtp.ssl.trust=*
spring.jpa.logging.mail.smtp.auth=true
spring.jpa.logging.mail.smtp.starttls.enable=true
spring.jpa.logging.mail.smtp.connectiontimeout=5000
spring.jpa.logging.mail.smtp.timeout=3000
spring.jpa.logging.mail.smtp.writetimeout=5000
logging.level.org.hibernate.SQL=TRACE
logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE