Docker + MySQL + Springboot - не работает (не удается подключиться) через docker compose - PullRequest
0 голосов
/ 06 ноября 2019

Я настраиваю развертывание через докер и хочу использовать Mysql внутри контейнера в той же сети, но он не работает - ошибка вызвана: com.mysql.cj.exceptions.CJCommunicationsException: сбой канала связи

Я приложил к нему свои файлы поддержки. Может кто-нибудь, пожалуйста, помогите.

Я попробовал несколько способов, изменив образ mysql на mysql / server, попытался установить скрипт ожидания, но ни один из них не сработал для меня

----- >>>>>> Docker-compose.yml

version: '3.2'
services:
  db-new:
    container_name: mysql
    image: mysql
    ports:
      - "3306:3306"
    restart: always
    environment:
      MYSQL_DATABASE: test
      MYSQL_USER: root
      MYSQL_PASSWORD: root
      MYSQL_ROOT_PASSWORD: root
      MYSQL_ROOT_HOST: '%'
    volumes:
      - db-data:/var/lib/mysql
    networks:
      - myNetwork-new

  backend:
    container_name: my-backend
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      - /data/app
    ports:
      - "8090:8090"
    restart: always
    depends_on:
      - db-new
    networks:
      - myNetwork-new

#Volumes
volumes:
  db-data:

networks:
  myNetwork-new:
    driver: bridge

---- >>>>>> DockerFile

# Maven build container
FROM maven:3.5.2-jdk-8-alpine

# Add Maintainer Info
MAINTAINER Rajat Gupta <rajat@gmail.com>

WORKDIR /usr/src/java-code

COPY . /usr/src/java-code/

# command to build the jar
RUN mvn package

#setting the working directory
WORKDIR /usr/src/java-app

#copying the jar files
RUN cp /usr/src/java-code/target/*.jar ./app.jar

#command to execute the jar file
#CMD ["/usr/src/java-app/wait-for-it.sh", "db:3306", "-t", "6000", "--","java", "-jar", "app.jar"]
CMD ["java", "-jar", "app.jar"]

--------- >>>> application.properties

spring.datasource.url=jdbc:mysql://db-new:3306/test?useSSL=false

Я ожидаю, что на выходе будет подпружиненное приложение, связанное с контейнером Mysql

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...