在linux机器上执行(运行).net core 2.1 api应用程序的docker映像时引发以下异常
我正在使用pomelo.entityframeworkcore.mysql来使用mysql数据库
当我在windows机器上构建并运行api映像时,它运行良好,但是当我尝试在linux上运行相同的映像时,抛出了以下异常。
在linux机器上构建和运行映像时也是如此。
不确定出了什么问题。
microsoft.entityframeworkcore.database.connection[20004。使用到服务器“”上数据库“”的连接时出错。mysql.data.mysqlclient.mysqlexception(0x80004005):连接超时已过期。--system.objectdisposedexception:已在system.runtime.interopservices.safehandle.dangerousaddref(布尔值和成功)的system.stubhelpers.stubhelpers.SafeHandLeadRef(safehandle phandle,布尔值和成功值)interop.sys.trychangesocketeventregistration(intptr端口、safehandle套接字、socketevents currentevents,socketevents(新事件、intptr数据)
期待Maven的帮助和高度赞赏。
1条答案
按热度按时间kq0g1dla1#
无法从运行应用程序的docker容器访问运行mysql server的容器/服务器。因此,应用程序在尝试打开数据库连接时超时(“连接超时已过期”)。
确保您的网络设置允许您的web服务器与端口3306上的db服务器联系。