无法在 Linux 机器上为使用带有 Pomelo.EntityFrameworkCore.MySql 的 MySQL 数据库的 dot net core 2.1 应用程序运行 docker 映像

sur*_*13k 5 c# mysql asp.net-core asp.net-core-webapi asp.net-core-2.0

在 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(Boolean& success) at System.StubHelpers.StubHelpers.SafeHandleAddRef(SafeHandle pHandle, Boolean& success) Interop.Sys.TryChangeSocketEventRegistration(IntPtr port, SafeHandle 套接字、SocketEvents currentEvents、SocketEvents newEvents、IntPtr 数据)

期待专家的帮助和高度赞赏。

Bra*_*ger 1

运行 MySQL Server 的容器/服务器无法从运行应用程序的 Docker 容器访问。因此,您的应用程序在尝试打开数据库连接时超时 (\xe2\x80\x9cConnect Timeout expired\xe2\x80\x9d)。

\n\n

确保您的网络设置允许您的 Web 服务器通过端口 3306 联系数据库服务器。

\n