gpt4 book ai didi

mysql - 使用 docker-compose 连接 Tomcat 容器和 Mysql 容器

转载 作者:行者123 更新时间:2023-11-29 16:50:48 25 4
gpt4 key购买 nike

我是 Docker 新手。我检查了这个答案Unable to Connect MySQL container to Tomcat Container in docker但它对我不起作用。这就是我发布这个问题的原因。我的 docker-compose 如下。

version: '3'
services:
web:
build: .
ports:
- "4000:8080"
links:
- db

db:
image: mysql:latest
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: custom
MYSQL_USER: root
MYSQL_PASSWORD: root
volumes:
- ./mysql-data:/var/lib/mysql

通过这个我需要建立联系。我正在使用 jsp 文件建立连接并获取数据。我的jsp文件如下。

 <%@ page import="pageNumber.*,java.util.*, java.io.*, java.sql.*"%>
<!DOCTYPE html>
<body>
<%
try {
Connection con;
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://db:3306/custom?useSSL=false", "root", "root");
if(con!=null){
out.println ("database successfully opened.");
out.println(con);
}

}
catch(SQLException e) {
out.println("SQLException caught: " +e.getMessage());
}
%>
</body>

我读到Unable to Connect MySQL container to Tomcat Container in docker仔细解决问题并进行更改。但我仍然收到此错误。

SQLException caught: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.

请谁能帮我解决这个问题。感谢您的宝贵时间

最佳答案

https://docs.docker.com/compose/compose-file/#build根据他们的文件。我认为我们不能给予

build .

在 docker-compose.yml 中需要在构建命令后给出目录。在这种情况下,我采取了错误的方式。

正确的方法

build ./dir

关于mysql - 使用 docker-compose 连接 Tomcat 容器和 Mysql 容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52811189/

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