docker-compose服务无法连接到springboot中的mysql容器

qoefvg9y  于 2023-02-28  发布在  Mysql
关注(0)|答案(1)|浏览(177)

我正在尝试使用SpringBoot服务连接到MySQL容器,但是它显示我无法连接到数据库。

    • 停靠-编写. yml**
dbmysql:
  container_name: dbmysql
  image: mysql:latest
  restart: unless-stopped  
  environment:
    MYSQL_ROOT_PASSWORD: "password"
    MYSQL_USER: "admin"
    MYSQL_DATABASE: freelance

  ports:
    - "3306:3306"
  volumes:
    - /var/lib/docker/volumes/freelance_volume/_data

userjob:
  depends_on:
    - dbmysql
    - eureka-server
  image: userjob:latest
  container_name: userjob
  build:
    context: userjob/.
    dockerfile: Dockerfile.layered #docker file path (. means current directory)
  ports:
    - "8000:8000"
  environment:
    - spring.datasource.url=jdbc:mysql://dbmysql:3306/freelance
    - spring.datasource.username=admin
    - spring.datasource.password="password"
    - log.level.root=debug

产量:

error:
`java.sql.SQLException: Access denied for user 'admin'@'172.18.0.10' (using password: YES) 2023-02-22T17:36:09.797671197Z   at 
com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129) ~[mysql-connector-j-8.0.31.jar:8.0.31] 2023-02-22T17:36:09.797672529Z   at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) ~[mysql-connector-j-8.0.31.jar:8.0.31] 2023-02-22T17:36:09.797673778Z    at
 com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:828) ~[mysql-connector-j-8.0.31.jar:8.0.31] 2023-02-22T17:36:09.797674920Z    at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:448) ~[mysql-connector-j-8.0.31.jar:8.0.31] 2023-02-22T17:36:09.797676415Z   at 
com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:241) ~[mysql-connector-j-8.0.31.jar:8.0.31] 2023-02-22T17:36:09.797677642Z     at 
com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198) ~[mysql-connector-j-8.0.31.jar:8.0.31] 2023-02-22T17:36:09.797678805Z     at 
com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138) ~[HikariCP-5.0.1.jar:na] 2023-02-22T17:36:09.797679943Z    at 
com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:359) ~[HikariCP-5.0.1.jar:na] 2023-02-22T17:36:09.797681125Z    at 
com.zaxxer.hikari.pool.PoolBase.`

我曾尝试将端口设置为其他egido3307或其他,但都失败了

2nc8po8w

2nc8po8w1#

该错误消息指示连接成功,但数据库帐户被拒绝。
查看MySQL容器配置,我发现您为root用户设置了密码,但没有为admin用户设置密码。您需要将以下环境变量添加到MySQL容器中:

MYSQL_PASSWORD: "password"

相关问题