Код: Выделить всё
version: '3.8'
services:
mysql:
image: mysql:8
container_name: mysql_container
environment:
MYSQL_ROOT_PASSWORD: abcd@123
MYSQL_DATABASE: tbappmasterdb
MYSQL_USER: abcd
MYSQL_PASSWORD: abcd@123
ports:
- "3306:3306"
volumes:
- mysql_data:/var/lib/mysql
networks:
- app-network
springboot:
build:
context: ./track_your_business
container_name: springboot_backend2_container
depends_on:
- mysql
environment:
SPRING_DATASOURCE_URL: jdbc:mysql://mysql:3306/tbappmasterdb
SPRING_DATASOURCE_USERNAME: abcd
SPRING_DATASOURCE_PASSWORD: abcd@123
command: sh -c "sleep 20 && java -jar app.jar"
ports:
- "8082:8080"
networks:
- app-network
react:
build:
context: ./trackbusiness_rct
container_name: react_frontend2_container
depends_on:
- springboot
ports:
- "3001:80"
networks:
- app-network
networks:
app-network:
driver: bridge
volumes:
mysql_data:
Когда я запускаю:
Код: Выделить всё
docker compose up -d
Код: Выделить всё
Communications link failure: The driver has not received any packets from the server.
Оба контейнера находятся в одной сети (app-network)
Порт MySQL 3306 открыт
Пытался использовать как mysql, так и mysql_container в качестве имен хостов.
Журнал MySQL показывает, что все запустилось правильно.
Вопрос:
Как правильно Spring Boot подключиться к контейнеру MySQL внутри той же сети Docker Compose?
Правильен ли мой SPRING_DATASOURCE_URL или я что-то упустил в настройке?>
Подробнее здесь: https://stackoverflow.com/questions/798 ... compose-ne
Мобильная версия