我现在正在try 一些新东西,我想创建一个小型Spring/mySQL应用程序.我设置了一个docker-compose文件,如下所示:
version: '3.3'
services:
docker-mysql:
container_name: docker-mysql
image: mysql:5.7
restart: always
environment:
- MYSQL_ROOT_PASSWORD=root
volumes:
- db_data:/var/lib/mysql
- ./initalize.sql:/docker-entrypoint-initdb.d/initalize.sql:ro
ports:
- 3306:3306
expose:
- 3306
volumes:
db_data: {}
在initalize.SQL中,我建立了一个包含一些测试表的基本Test数据库,并填写了其中的一些,它工作得很好,我可以通过命令行查询元素.
另一方面,我无法通过Spring连接到它,我有以下application.properties文件:
spring.jpa.hibernate.ddl-auto=none
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQLDialect
spring.datasource.url=jdbc:mysql://localhost:3306/TEST?useSSL=false
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
每次我try 启动应用程序时,它都会得到com.mysql.cj.exceptions.CJCommunicationsException: Communications link failure error, and it can't find the server.
(我没有在docker镜像中运行该应用程序,它在Windows上运行)
我还try 连接将收件箱url更改为jdbc:mysql://docker-mysql:3306/TEST?useSSL=false
,但也不起作用.