计划
我希望我的tomcat服务器能够在单独的容器中连接到我的MySQL服务器.
问题
Tomcat无法连接到MySQL
我使用了wordpress教程中有关设置mysql容器链接的一些细节,并创建了MySQL的链接.
虽然tomcat和mysql旋转得很好我似乎无法让tomcat能够连接到MySQL,我的本地机器上的设置工作完全没问题.
我也尝试过使用--net: "host"虽然它不能用于Tomcat,因为它会引发严重的错误.
以前的答案
我在这篇文章中注意到了错误的可能修复程序,尽管我不相信其中任何一个会转换为我的问题,因为我认为这是一个docker问题而不是主机问题.
泊坞窗,compose.yml
web:
image: tomcat:7.0
container_name: tomcat-container
ports:
- "80:8080"
hostname: docker-tomcat
volumes:
- /home/webapps:/usr/local/tomcat/webapps
links:
- db
db:
image: mysql
container_name: mysql-container
environment:
MYSQL_ROOT_PASSWORD: Mysqlpassword1
MYSQL_DATABASE: tracker
volumes:
- /home/mysqlDB:/var/lib/mysql
这是我的 Context.xml from tomcat.
name="jdbc/tracker" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
url="jdbc:mysql://localhost:3306/tracker?useSSL=false"
driverClassName="com.mysql.jdbc.Driver"
username="root" password="mysqladmin1"
/>
name="jdbc/jenkins" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
url="jdbc:mysql://localhost:3306/jenkins?useSSL=false"
driverClassName="com.mysql.jdbc.Driver"
username="root" password="mysqladmin1"
/>
错误代码.
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1549)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1388)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)
at databaseConnections.SQLDatabaseConnection.tableExists(SQLDatabaseConnection.java:131)
at databaseConnections.JiraSQLDatabaseConnection.(JiraSQLDatabaseConnection.java:50)