当前位置: 首页 > 知识库问答 >
问题:

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

裴育
2023-03-14
 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:

原因:java.sql.sqlsyntaxerrorexception:com.mysql.cj.jdbc.exceptions.sqlerror.createsqlexception(sqlerror.java:120)~[mysql-connector-java-8.0.13.jar!/:8.0.13]com.mysql.cj.jdbc.exceptions.sqlerror.createsqlexception(sqlerror.java:97)~[mysql-connector-java-8.0.13.jar!/:8.0.13]不存在表“data.token”

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

共有1个答案

金和雅
2023-03-14

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

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

这里描述了字符串的格式。

顺便说一句,我认为restart:'always'应该在environment块之外。

 类似资料: