Не могу установить Подключение MYSQL к docker compose
начал изучать DOCKER и решил свой проект связать с ним. Пишу проект на SPRING BOOT, база MySql В ходе попытки решения у меня возникли ошибки такие как "Communication link error" "Acces Denied for user(using password NO) либо просто когда запкскаю проект через docker-compose up он ничего больше не выводит и на сайте выводит как обычно: Не удается получить доступ к сайту
server.port=8080
spring.datasource.url=jdbc:mysql://mysql:3306/finalproject
spring.liquibase.url=jdbc:mysql://mysql:3306/finalproject
spring.liquibase.user=root
spring.liquibase.password=root
spring.datasource.username=root
spring.datasource.password=root
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=none
spring.liquibase.changeLog=classpath:/db/changelog/db.changelog-master.xml
version: '3'
services:
mysql:
image: mysql:latest
container_name: mysql_finalproject
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: finalproject
MYSQL_USER: root
MYSQL_PASSWORD:
ports:
- "3306:3306"
volumes:
- ./mysql_data:/var/lib/mysql
spring-app:
image: new-image
container_name: spring_app
environment:
SPRING_DATASOURCE_URL: jdbc:mysql://mysql:3306/finalproject
SPRING_DATASOURCE_USERNAME: root
SPRING_DATASOURCE_PASSWORD:
SPRING_LIQUIBASE_URL: jdbc:mysql://mysql:3306/finalproject
SPRING_LIQUIBASE_USER: root
SPRING_LIQUIBASE_PASSWORD:
ports:
- "8080:8080"
depends_on:
- mysql
Dockerfile
FROM openjdk:17-oracle
MAINTAINER Takhirzhan
COPY StayHub.jar myFinalProject.jar
ENTRYPOINT ["java", "-jar","myFinalProject.jar"]
Ответы (1 шт):
я не специалист по докеру, но с виду не хватает объединения контейнеров в сеть.
В конец docker-compose.yaml дописать сеть:
networks:
final_net: <--- ваше название
driver: bridge
Далее эту сеть указать обоим контейнерам
services:
mysql:
...
networks:
- final_net
spring-app:
...
networks:
- final_net
Далее при настройке подключения к БД, надо указать имя контенйра, которое вы задаете в container_name. То есть строка подключения должна иметь вид
jdbc:mysql://mysql_finalproject:3306/finalproject