gpt4 book ai didi

mysql - 无法在 Docker-Compose 文件中将本地数据库映射到(mysql 镜像中的卷)

转载 作者:行者123 更新时间:2023-11-29 15:32:13 25 4
gpt4 key购买 nike

Docker-Compose 文件

 db:
image: mysql:latest
environment:
MYSQL_DATABASE: 'tel'
restart: 'always'
MYSQL_USER: 'root'
MYSQL_ROOT_PASSWORD: 'test'
ports:
- '3306:3306'
volumes:
- my-db:/usr/local/var/mysql

app:
image: "myapp/app:v1"
ports:
- "9292:9292"
environment:
SPRING_DATASOURCE_URL: jdbc:mysql://db/data
SPRING_DATASOURCE_USERNAME: root
SPRING_DATASOURCE_PASSWORD: 'test'

depends_on:
- db

volumes:
my-db:

进行 docker compose 时出错

Caused by: java.sql.SQLSyntaxErrorException: Table 'data.token' doesn't exist at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) ~[mysql-connector-java-8.0.13.jar!/:8.0.13] at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) ~[mysql-connector-java-8.0.13.jar!/:8.0.13]

表“数据”存在于本地,但无法从 docker compose 映射它

最佳答案

我认为您的 jdbc url 不正确。应该是:

SPRING_DATASOURCE_URL: "jdbc:mysql://db/tel"

字符串的格式描述here .

顺便说一句,我认为 restart: 'always' 应该位于 environment block 之外。

关于mysql - 无法在 Docker-Compose 文件中将本地数据库映射到(mysql 镜像中的卷),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58622898/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com