要为我的春季启动应用程序创建jar来构建docker容器,我从eclipse运行 Maven Install ,但构建失败并出现以下错误:
2020-07-18 20:47:52.452 INFO 5920 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...
2020-07-18 20:47:52.566 INFO 5920 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.
2020-07-18 20:48:22.960 INFO 5920 --- [ restartedMain] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default]
2020-07-18 20:48:23.299 INFO 5920 --- [ restartedMain] org.hibernate.Version : HHH000412: Hibernate Core {5.4.9.Final}
2020-07-18 20:48:23.821 INFO 5920 --- [ restartedMain] o.hibernate.annotations.common.Version : HCANN000001: Hibernate Commons Annotations {5.1.0.Final}
2020-07-18 20:48:54.341 WARN 5920 --- [ restartedMain] o.h.e.j.e.i.JdbcEnvironmentInitiator : HHH000342: Could not obtain connection to query metadata : HikariPool-1 - Connection is not available, request timed out after 30000ms.
2020-07-18 20:48:54.361 WARN 5920 --- [ restartedMain] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]
2020-07-18 20:48:54.365 INFO 5920 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated...
2020-07-18 20:49:03.446 INFO 5920 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed.
2020-07-18 20:49:03.452 INFO 5920 --- [ restartedMain] o.apache.catalina.core.StandardService : Stopping service [Tomcat]
2020-07-18 20:49:03.522 INFO 5920 --- [ restartedMain] ConditionEvaluationReportLoggingListener :
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2020-07-18 20:49:03.551 ERROR 5920 --- [ restartedMain] o.s.boot.SpringApplication : Application run failed
我的Spring Boot应用程序的application.properties文件是:
spring.datasource.username=root
spring.datasource.password=ayush123
spring.datasource.url=jdbc:mysql://mysqldb:3306/employeedb
spring.datasource.platform=mysql
hibernate.hbm2ddl.auto=update
spring.jpa.generate-ddl=true
spring.datasource.hikari.initializationFailTimeout=-1
我也尝试过
spring.datasource.url=jdbc:mysql://mysqldb/employeedb
我使用以下命令创建了docker网络并构建了MySQL数据库:
docker pull mysql:8.0
docker network create edrms-net
docker container run --name mysqldb --network edrms-net -e MYSQL_ROOT_PASSWORD=ayush123 -e MYSQL_DATABASE=employeedb -d mysql:8.0
在docker container ls
上,我可以看到MYSQL容器已部署并正在运行。
我完全迷路了,无法康复。请帮忙!
答案 0 :(得分:0)
要连接到docker容器中的mySql服务器,必须在运行要连接到服务器的容器时发布端口。
要实现这一点,请在您的docker容器运行命令中添加--publish 3306:3306
。