Hi Dear Friends,
We have an urgent issue on Production. After we migrate to 9.1.3, everything works on local perfectly but on Kubernetes 3 project can't start and gives below error.
I need your help, urgently, please.
- Template: microservice
- Created ABP Studio Version: 0.9.11
- Current ABP Studio Version: 0.9.26
- Multi-Tenancy: Yes
- UI Framework: mvc
- Theme: leptonx
- Theme Style: system
- Database Provider: ef
- Database Management System: postgresql
- Mobile Framework: react-native
- Public Website: Yes
- Include Tests: Yes
[16:24:17 INF] Starting TavTechnologies.Treva.AuthServer
TavTechnologies.Treva.AuthServer terminated unexpectedly!
Volo.Abp.AbpInitializationException: An error occurred during ConfigureServicesAsync phase of the module Volo.Abp.AspNetCore.AbpAspNetCoreModule, Volo.Abp.AspNetCore, Version=9.1.3.0, Culture=neutral, PublicKeyToken=null. See the inner exception for details.
---> System.IO.DirectoryNotFoundException: /src/TavTechnologies.Treva.AuthServer/wwwroot/
at Microsoft.Extensions.FileProviders.PhysicalFileProvider..ctor(String root, ExclusionFilters filters)
at Microsoft.AspNetCore.Hosting.StaticWebAssets.StaticWebAssetsLoader.<>c.<UseStaticWebAssetsCore>b__1_0(String contentRoot)
at Microsoft.AspNetCore.StaticWebAssets.ManifestStaticWebAssetFileProvider..ctor(StaticWebAssetManifest manifest, Func`2 fileProviderFactory)
at Microsoft.AspNetCore.Hosting.StaticWebAssets.StaticWebAssetsLoader.UseStaticWebAssetsCore(IWebHostEnvironment environment, Stream manifest)
at Microsoft.AspNetCore.Hosting.StaticWebAssets.StaticWebAssetsLoader.UseStaticWebAssets(IWebHostEnvironment environment, IConfiguration configuration)
at Volo.Abp.AspNetCore.AbpAspNetCoreModule.ConfigureServices(ServiceConfigurationContext context)
at Volo.Abp.Modularity.AbpModule.ConfigureServicesAsync(ServiceConfigurationContext context)
at Volo.Abp.AbpApplicationBase.ConfigureServicesAsync()
--- End of inner exception stack trace ---
at Volo.Abp.AbpApplicationBase.ConfigureServicesAsync()
at Volo.Abp.AbpApplicationFactory.CreateAsync[TStartupModule](IServiceCollection services, Action`1 optionsAction)
at Microsoft.Extensions.DependencyInjection.ServiceCollectionApplicationExtensions.AddApplicationAsync[TStartupModule](IServiceCollection services, Action`1 optionsAction)
at Microsoft.Extensions.DependencyInjection.WebApplicationBuilderExtensions.AddApplicationAsync[TStartupModule](WebApplicationBuilder builder, Action`1 optionsAction)
at TavTechnologies.Treva.AuthServer.Program.Main(String[] args) in /src/TavTechnologies.Treva.AuthServer/Program.cs:line 63
at Volo.Abp.AbpApplicationBase.ConfigureServicesAsync()
at Volo.Abp.AbpApplicationFactory.CreateAsync[TStartupModule](IServiceCollection services, Action`1 optionsAction)
at Microsoft.Extensions.DependencyInjection.ServiceCollectionApplicationExtensions.AddApplicationAsync[TStartupModule](IServiceCollection services, Action`1 optionsAction)
at Microsoft.Extensions.DependencyInjection.WebApplicationBuilderExtensions.AddApplicationAsync[TStartupModule](WebApplicationBuilder builder, Action`1 optionsAction)
at TavTechnologies.Treva.AuthServer.Program.Main(String[] args) in /src/TavTechnologies.Treva.AuthServer/Program.cs:line 63
3 Answer(s)
-
0
hi
Can you share your
AuthServer
website files from the pods?You can zip the project files and share them.
Thanks
liming.ma@volosoft.com
-
0
Hi ma, i found the problem and fix the build.
When we use AbpMapStaticAssets() function in ConfigureService method, it map static assets and create mappings in obj/Release folder. So, i had to give a path for static assets when i build the project.
Like below
FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS base WORKDIR /app EXPOSE 80 ENV ASPNETCORE_URLS=http://+:80
FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build ARG BUILD_CONFIGURATION=Release WORKDIR /src COPY ["TavTechnologies.Treva.AuthServer/TavTechnologies.Treva.AuthServer.csproj", "TavTechnologies.Treva.AuthServer/"] COPY ["TavTechnologies.Treva.AuthServer/NuGet.Config", "TavTechnologies.Treva.AuthServer/"]
RUN dotnet restore "./TavTechnologies.Treva.AuthServer/TavTechnologies.Treva.AuthServer.csproj" COPY . . WORKDIR "/src/TavTechnologies.Treva.AuthServer" RUN dotnet build "./TavTechnologies.Treva.AuthServer.csproj" -c $BUILD_CONFIGURATION -o /app/build --artifacts-path /app/build
FROM build AS publish ARG BUILD_CONFIGURATION=Release RUN dotnet publish "./TavTechnologies.Treva.AuthServer.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false
FROM base AS final WORKDIR /app COPY --from=publish /app/publish . ENTRYPOINT ["dotnet", "TavTechnologies.Treva.AuthServer.dll"]
But it'was really hard to find and understand the problem.
Maybe, you can also update documentation for proper builds when we add or use a new feature in our projects. Can you refund my ticket, please?
-
0
ok. Thanks.