配置Spring Boot Docker和Mysql

我是Spring Boot" title="Spring Boot">Spring Boot和Docker的新手。

我试图创建一个连接到mysql并使用Docker来运行两者的Spring Boot应用程序。

步骤1- 创建mysql映像并开始运行它的步骤。

docker run --name=docker-mysql --env="MYSQL_ROOT_PASSWORD=root" --env="MYSQL_PASSWORD=root" --env="MYSQL_DATABASE=test" mysql

Step2 创建一个SpringBoot应用程序

docker build -f Dockerfile -t gradle-springboot-docker .

第三步:运行 Spring Boot应用程序并与Mysql链接

docker run -t --name gradle-springboot-docker --link docker-mysql:mysql -p 8080:8080 gradle-springboot-docker

它给mysql提供了基本的连接错误。我列出了以下application.properties。自从我使用Docker后,我的连接信息是否正确?mysql的主机是什么?

SSL properties

server.port=8080

#DataSource

datasource.driver = com.mysql.jdbc.Driver

datasource.url= jdbc:mysql://localhost:3306/test?

autoReconnect=true&useSSL=false

datasource.username=root

datasource.password=root

# Hibernate

hibernate.dialect = org.hibernate.dialect.MySQL5Dialect

hibernate.show_sql = true

hibernate.lazy = true

hibernate.max_fetch_depth = 3

hibernate.packagesToScan = com.springboot.poc

# Once DB is created change below property to 'update'

hibernate.hbm2ddl.auto = update

回答:

您应该使用mysql的容器名称作为主机名,因为这些链接在一起,因此可以通过spring的名称发现mysql容器。因此,您需要更改datasource.url=

jdbc:mysql://localhost:3306/test?datasource.url= jdbc:mysql://docker-

mysql:3306/test?

或者您可以使用别名,如@ g00glen00b建议的那样,例如: datasource.url=

jdbc:mysql://mysql:3306/test?

以上是 配置Spring Boot Docker和Mysql 的全部内容, 来源链接: utcz.com/qa/424533.html

回到顶部