【问题标题】:Remote Mysql DB not able to connect by docker-compose spring boot application远程 Mysql DB 无法通过 docker-compose spring boot 应用程序连接
【发布时间】:2021-04-03 18:45:44
【问题描述】:

我正在容器化数据库为 Mysql-8 的 spring-boot 应用程序。

数据库托管在不同的机器上。

我们想从基于容器的服务连接它,但无法连接它。

机器的IP在Mysql中配置为允许连接。

docker 端是否需要任何设置以允许通信?或者 Mysql 端需要进行任何更改?

当我从我的机器运行服务以连接到数据库时,同样的事情正在工作。

任何输入,指针都非常感谢。

所涉及的配置和步骤是:

1.pom.xml 更改为创建spring-boot 服务的镜像。

             <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>${spring.boot.version}</version>
                <configuration>
                    <image>
                        <name>abc/uvw-${project.artifactId}:${project.version}</name>
                    </image>
                    <pullPolicy>IF_NOT_PRESENT</pullPolicy>
                </configuration>
            </plugin>
  1. 根据上述更改构建映像。

spring-boot:build-image

  1. jdbc.properties 文件。 wsnw-pc3 是网络中托管 DB 的机器。
jdbc.driverClassName=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://wsnw-pc3:3306/xxxx?useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowPublicKeyRetrieval=true
jdbc.username=<username>
jdbc.password=<password>
  1. Docker 撰写文件更改
version: '3.8'

services:
  myservice:
    image: abc/uvw-myservice:1.0
    deploy:
      resources:
        limits:
          memory: 700m
    ports:
      - "8080:8080"

谢谢,

阿图尔

【问题讨论】:

  • 您是否能够从您的主机环境(而不是 Docker 环境)连接到远程 MySQL 数据库?
  • 是的,我是@jeroen
  • 将你的 spring 应用程序 docker 添加到主机。 --network=host in docker run 或 docker network connect host
  • @Atul 是否可以发布您在本地使用的 docker 命令或 docker-compose 配置以将容器连接到远程数据库?
  • @Jeroen van der Laan 添加了所需信息。如有任何需要,请告诉我。

标签: java mysql spring-boot docker docker-compose


【解决方案1】:

当我尝试使用容器化 Spring Boot 应用程序连接到在主机上运行的数据库时,这对我有用。

version: "3.8"
services:
  app:
    network_mode: host # add this line
...

【讨论】:

    猜你喜欢
    • 2020-04-07
    • 2020-07-12
    • 2021-04-24
    • 2021-04-22
    • 2018-07-02
    • 2015-04-27
    • 2021-08-02
    • 2016-02-19
    • 2020-06-06
    相关资源
    最近更新 更多