es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo implementar la API REST de Telerik Reporting (.NET Core 3.1) con contenedores de Docker + Kubernetes en el sistema operativo anfitrión Ubuntu.

Estos son los detalles de mi sistema operativo de host:

NAME="Ubuntu"
VERSION="18.04.5 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.5 LTS"
VERSION_ID="18.04"

Este es mi archivo Docker:

FROM mcr.microsoft.com/dotnet/aspnet:3.1-bionic AS base
WORKDIR /app

RUN apt-get update \
    && apt-get install -y --allow-unauthenticated \
        libc6-dev \
        libgdiplus \
        libx11-dev \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /app
EXPOSE 80
EXPOSE 443
RUN ln -s /shared_storage /app/shared
ENV ASPNETCORE_URLS=http://+:80

FROM mcr.microsoft.com/dotnet/sdk:3.1-bionic AS build
WORKDIR /app

COPY ["MyAPI/MyAPI.csproj", "MyAPI/"]

COPY . ./
RUN dotnet restore "MyAPI/MyAPI.csproj"

RUN dotnet build "MyAPI.csproj" -c Release -o /app/build

FROM build AS publish

RUN dotnet publish "MyAPI/MyAPI.csproj" -c Release -o out

FROM base AS final
WORKDIR /app
COPY --from=build /app/out .
ENTRYPOINT ["dotnet", "MyAPI.dll"]

Este Docker crea mi imagen sin ningún problema, pero el problema es que al intentar acceder a mi informe telerik, obtengo el siguiente error:

Unable to get report parameters.
An error has occurred.
Type: Telerik.Reporting.ReportSerialization.Current.ReportSerializable`1[Telerik.Reporting.Report]

NB: También he intentado con mcr.microsoft.com/dotnet/sdk:3.1.21-bionic, pero esta imagen no existe.

NB: En mi entorno de desarrollo, estoy utilizando Windows 10 y desde mi localhost puedo generar los informes sin ningún problema.

Estoy utilizando la última versión de Telerik Reporting.
Mi Nuget.Config es el siguiente:

<configuration>
  <packagesources>
    <add key="nuget.telerik.com" value="https://nuget.telerik.com/nuget"></add>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolversion="3"></add>
  </packagesources>
  <packagesourcecredentials>
    <nuget.telerik.com>
      <add key="Username" value="email@mail.com"></add>
      <add key="ClearTextPassword" value="abcdefg"></add>
    </nuget.telerik.com>
  </packagesourcecredentials>
</configuration>
Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Parece que estás experimentando un problema al acceder a Telerik Report después de construir la imagen de Docker. El mensaje de error indica que hay un problema con los parámetros del informe. Es posible que el problema esté relacionado con la configuración de la imagen de Docker.

    Para solucionar el problema, puedes intentar los siguientes pasos:

    1. Verifica la compatibilidad de la versión de Telerik Reporting con Ubuntu 18.04.5 LTS. Se recomienda utilizar una versión compatible con el sistema operativo.
    2. Asegúrate de que los paquetes necesarios estén instalados en la imagen de Docker, incluyendo telerik-reporting.

    3. Asegúrate de que el puerto correcto esté expuesto en la imagen de Docker para acceder al informe.

    4. Intenta ejecutar la imagen de Docker en la máquina local y verifica si persiste el problema. Esto te ayudará a aislar el problema y determinar si está relacionado con la imagen de Docker o el entorno.

    5. Verifica el archivo NuGet.Config para asegurarte de que las credenciales para la fuente del paquete NuGet de Telerik sean correctas.

    6. Revisa los registros para verificar si hay algún mensaje de error o advertencia.

    Si el problema persiste después de intentar los pasos anteriores, es posible que debas explorar otras opciones, como actualizar los parámetros del informe, verificar el código en busca de errores o contactar al soporte de Telerik para obtener ayuda adicional.

Comments are closed.