sql >> Base de Datos >  >> RDS >> Mysql

¿Por qué mi aplicación de API web .NET no se conecta a MySQL en docker cuando se usa docker-compose?

No ha mostrado el Dockerfile para su aplicación, pero supongo que está usando dotnet publish para crear una aplicación de un solo archivo.

Como dice el mensaje de excepción:

La biblioteca .NET MySQL que está utilizando (MySql.Data) depende de ConfigurationManager , que está causando esta excepción. Tienes dos opciones:

  1. Deje de publicar su aplicación como un solo archivo.
  2. Cambiar a MySqlConnector , que es una biblioteca MySQL .NET más moderna que es totalmente compatible con .NET Core.

Para dejar de publicar como un solo archivo, cambie el RUN dotnet publish bloque en su Dockerfile a:

RUN dotnet publish "PostService.csproj" -c Release -o /app/publish \
    --no-restore \
    --runtime alpine-x64 \
    --self-contained true