我是 Docker 的新手。我检查了这个答案,无法连接mysql容器到docker中的tomcat容器,但它不适合我。这就是为什么我张贴这个问题。我的 Docker 在吼叫。
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>
我仔细阅读了无法连接mysql容器到tomcat容器的docker问题,并进行了修改。但我还是犯了这个错误。
捕获到sqlexception:通信链接失败成功发送到服务器的最后一个数据包是0毫秒前。驱动程序尚未从服务器接收到任何数据包。
请任何人帮我解决这个问题。谢谢你抽出时间
1条答案
按热度按时间lfapxunr1#
https://docs.docker.com/compose/compose-file/#build 根据他们的文件。我想我们不能放弃
建造。
在docker-compose.yml中,需要在build命令之后给出目录。在这种情况下,我做了不正确的方式。
正确的方法
内部版本/目录