簡體   English   中英

是否可以在docker mysql運行容器以及Windows 10 mysql中使用3306端口(相同的端口)

[英]is it possible to use 3306 port (same port) in docker mysql running container as well as in windows 10 mysql

我將戰爭文件成功部署在tomcat 7中,並使用以下命令啟動了tomcat

docker run -it --rm -p 7008:8080 -v //d/docker_tomcat/tomcat-users.xml:/usr/local/tomcat/conf/tomcat-users.xml:ro -v //d/docker_tomcat/webapps:/usr/local/tomcat/webapps:rw tomcat:7.0 

當tomcat啟動時,它顯示以下錯誤日志:-
使用了AbandonedObjectPool(org.apache.commons.dbcp.AbandonedObjectPool@9030ca2)
LogAbandoned:true
RemoveAbandoned:true
RemoveAbandonedTimeout:90
[localhost-startStop-1]錯誤org.hibernate.util.JDBCExceptionReporter-無法創建PoolableConnectionFactory

我認為上述錯誤意味着數據庫studentdb無法訪問

這是我的hibernate.properties文件:

hibernate.dialect=org.hibernate.dialect.MySQLDialect
hibernate.connection.driver_class=com.mysql.jdbc.Driver
hibernate.connection.username=root
hibernate.connection.password=root
hibernate.connection.url=jdbc:mysql://10.0.75.x<ip of docker>:3306/studentdb?autoreconnect=true&zeroDateTimeBehavior=convertToNull&jdbcCompliantTruncation=false
show_sql=false
hibernate.jdbc.use_streams_for_binary=false
hibernate.dbcp.testOnBorrow=true
hibernate.dbcp.validationQuery=SELECT 1 FROM DUAL
hibernate.dbcp.testOnReturn=false
hibernate.dbcp.maxWait=2000
hibernate.dbcp.testWhileIdle=true
hibernate.dbcp.minEvictableIdleTimeMillis=1800000
hibernate.dbcp.timeBetweenEvictionRunsMillis=300000
hibernate.dbcp.numTestsPerEvictionRun=5
hibernate.dbcp.removeAbandoned=true
hibernate.dbcp.removeAbandonedTimeout=90
hibernate.dbcp.logAbandoned=true  

我認為hibernate.properties文件的hibernate.connection.url屬性中可能存在錯誤。

並且還懷疑是因為我的Windows 10使用mysql的端口3306以及docker也使用mysql的端口3306。 如果是問題,那我該如何更改在docker中運行的mysql容器的端口以及其他端口

使用以下命令將您的本地端口轉發到Docker容器端口

docker run -p <LOCAL-PORT>:3306 <mysql-image-name>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM