Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 框架标识符Dotnet restore、docket build无效_C#_Docker_Asp.net Core_.net Core_Dockerfile - Fatal编程技术网

C# 框架标识符Dotnet restore、docket build无效

C# 框架标识符Dotnet restore、docket build无效,c#,docker,asp.net-core,.net-core,dockerfile,C#,Docker,Asp.net Core,.net Core,Dockerfile,尝试在dotnet core API中运行docker build时出现以下错误: Invalid framework identifier '' 这是我的dockerfile: FROM mcr.microsoft.com/dotnet/core/aspnet:2.2-stretch-slim AS base WORKDIR /app EXPOSE 80 EXPOSE 443 FROM mcr.microsoft.com/dotnet/core/sdk:2.2-stretch AS bu

尝试在dotnet core API中运行docker build时出现以下错误:

 Invalid framework identifier ''
这是我的dockerfile:

FROM mcr.microsoft.com/dotnet/core/aspnet:2.2-stretch-slim AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443

FROM mcr.microsoft.com/dotnet/core/sdk:2.2-stretch AS build
WORKDIR /src
COPY Backend/AppManagerAPI/AppManagerAPI.csproj Backend/AppManagerAPI/
COPY Backend/DTO/DTO.csproj Backend/DTO/
COPY nuget.config ./
COPY Build/dependencies.props ./Build
COPY Backend/Database/Database.csproj Backend/Database/
COPY Backend/Service/Service.csproj Backend/Service/
COPY Utilities/Utilities.csproj Utilities/
RUN dotnet restore "Backend/AppManagerAPI/AppManagerAPI.csproj"
COPY . .
WORKDIR "/src/Backend/AppManagerAPI"
RUN dotnet build "AppManagerAPI.csproj" -c Release -o /app

FROM build AS publish
RUN dotnet publish "AppManagerAPI.csproj" -c Release -o /app

FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "AppManagerAPI.dll"]

以及完整的错误堆栈:

$ docker build -t appmanager .
Sending build context to Docker daemon  560.6kB
Step 1/23 : FROM mcr.microsoft.com/dotnet/core/aspnet:2.2-stretch-slim AS base
 ---> 34973cab5999
Step 2/23 : WORKDIR /app
 ---> Using cache
 ---> c402eb945a47
Step 3/23 : EXPOSE 80
 ---> Using cache
 ---> 8ac4a84a040e
Step 4/23 : EXPOSE 443
 ---> Using cache
 ---> 3c5014f9b6d5
Step 5/23 : FROM mcr.microsoft.com/dotnet/core/sdk:2.2-stretch AS build
 ---> 08657316a4cd
Step 6/23 : WORKDIR /src
 ---> Using cache
 ---> e851dfaa1225
Step 7/23 : COPY Backend/AppManagerAPI/AppManagerAPI.csproj Backend/AppManagerAPI/
 ---> Using cache
 ---> 1eaa1d28c559
Step 8/23 : COPY Backend/DTO/DTO.csproj Backend/DTO/
 ---> Using cache
 ---> 81f9260e48a0
Step 9/23 : COPY nuget.config ./
 ---> Using cache
 ---> 3901e5ab8090
Step 10/23 : COPY Build/dependencies.props ./Build
 ---> Using cache
 ---> 35128353acde
Step 11/23 : COPY Backend/Database/Database.csproj Backend/Database/
 ---> Using cache
 ---> 25686efb1af9
Step 12/23 : COPY Backend/Service/Service.csproj Backend/Service/
 ---> Using cache
 ---> 3287a7a78971
Step 13/23 : COPY Utilities/Utilities.csproj Utilities/
 ---> Using cache
 ---> fe57c187d929
Step 14/23 : RUN dotnet restore "Backend/AppManagerAPI/AppManagerAPI.csproj"
 ---> Running in 33780f69aa7d
/usr/share/dotnet/sdk/2.2.401/NuGet.targets(123,5): error : Invalid framework identifier ''. [/src/Backend/AppManagerAPI/AppManagerAPI.csproj]
The command '/bin/sh -c dotnet restore "Backend/AppManagerAPI/AppManagerAPI.csproj"' returned a non-zero code: 1
我已经尝试了我能想到的一切,我想知道它是否与我的properties.props文件有关,但将它复制到容器中不起作用。任何帮助都将不胜感激

更新

这是我的AppManagerAPI.csproj

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>$(NetCoreTargetVersion)</TargetFramework>
    <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
    <DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
    <UserSecretsId>d37c9296-55fb-4c04-ad4e-3d1f5451dc28</UserSecretsId>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
    <GenerateDocumentationFile>true</GenerateDocumentationFile>
  </PropertyGroup>

  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
    <NoWarn></NoWarn>
    <AllowUnsafeBlocks></AllowUnsafeBlocks>
  </PropertyGroup>
  <ItemGroup>
    <None Remove="API.xml" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="Alpha.WebUtils.Core" Version="$(AlphaWebUtilsCorePackageVersion)" />
    <PackageReference Include="Microsoft.AspNetCore.App">
      <PrivateAssets Condition="'%(PackageReference.Version)' == ''">all</PrivateAssets>
      <Publish Condition="'%(PackageReference.Version)' == ''">true</Publish>
    </PackageReference>
    <PackageReference Include="Alpha.Utils.Core" Version="$(AlphaUtilsCorePackageVersion)" />
    <PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="$(AutomapperDIPackageVersion)" />
    <PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.4.10" />
    <PackageReference Include="Scrutor" Version="$(ScrutorPackageVersion)" />
    <PackageReference Include="Alpha.Backend.Core" Version="$(AlphaBackendCorePackageVersion)" />
    <PackageReference Include="Alpha.Backend.EFCore" Version="$(AlphaBackendEFCorePackageVersion)" />
    <PackageReference Include="Swashbuckle.AspNetCore" Version="$(SwashbuckleAspNetCorePackageVersion)" />
    <PackageReference Include="NetEscapades.Extensions.Logging.RollingFile" Version="$(LoggingRollingFilePackageVersion)" />
    <PackageReference Include="Microsoft.AspNetCore.Mvc.Api.Analyzers" Version="$(ApiAnalyzersPackageVersion)" />
    <PackageReference Include="EfCore.GenericBizRunner" Version="$(EfCoreGenericBizRunnerPackageVersion)" />
  </ItemGroup>

  <ItemGroup>    
    <ProjectReference Include="..\DTO\DTO.csproj" />    
    <ProjectReference Include="..\Service\Service.csproj" />
  </ItemGroup>

  <ItemGroup>
    <Folder Include="Models\" />
    <Folder Include="wwwroot\Upload\" />
    <Folder Include="logs\" />
  </ItemGroup>

  <ItemGroup>
    <Compile Remove="Controllers\Administracion\RutasController.cs" />
    <Compile Remove="Controllers\Administracion\SectoresController.cs" />
    <Compile Remove="Controllers\Administracion\ConsultaRutasController.cs" />
    <Compile Remove="Controllers\Administracion\ComercioEntidadTipoClienteController.cs" />
    <Compile Remove="Controllers\Administracion\LugaresController.cs" />
    <Compile Remove="Controllers\Genericos\CentrosController.cs" />
    <Compile Remove="Controllers\Genericos\MenuController.cs" />
    <Compile Remove="Controllers\GestionIntervenciones\AlisysController.cs" />
    <Compile Remove="Controllers\GestionIntervenciones\OrdenesIntervencionesController.cs" />
    <Compile Remove="Controllers\GestionIntervenciones\SauController.cs" />
    <Compile Remove="Controllers\Genericos\SystemController.cs" />
    <Compile Remove="Controllers\Mantenimiento\AccesoriosController.cs" />
    <Compile Remove="Controllers\Mantenimiento\DiasFestivosController.cs" />
    <Compile Remove="Controllers\Mantenimiento\EemmsController.cs" />
    <Compile Remove="Controllers\Mantenimiento\EntidadesMantenedorasController.cs" />
    <Compile Remove="Controllers\Mantenimiento\EtiquetasSatController.cs" />
    <Compile Remove="Controllers\Mantenimiento\GruposCualificadoresController.cs" />
    <Compile Remove="Controllers\Mantenimiento\HorariosController.cs" />
    <Compile Remove="Controllers\Mantenimiento\IncidenciasController.cs" />
    <Compile Remove="Controllers\Mantenimiento\MarcasController.cs" />
    <Compile Remove="Controllers\Mantenimiento\ModelosController.cs" />
    <Compile Remove="Controllers\Mantenimiento\ModelosIndicadosController.cs" />
    <Compile Remove="Controllers\Mantenimiento\MotivoCierreController.cs" />
    <Compile Remove="Controllers\Mantenimiento\MotivosParadaController.cs" />
    <Compile Remove="Controllers\Mantenimiento\PatronesCentroController.cs" />
    <Compile Remove="Controllers\Mantenimiento\PerfilesUsuarioController.cs" />
    <Compile Remove="Controllers\Mantenimiento\PermisosController.cs" />
    <Compile Remove="Controllers\Mantenimiento\PiezaAlmacenPrecioController.cs" />
    <Compile Remove="Controllers\Mantenimiento\PiezasController.cs" />
    <Compile Remove="Controllers\Mantenimiento\SoftwaresController.cs" />
    <Compile Remove="Controllers\Mantenimiento\TecnologiasController.cs" />
    <Compile Remove="Controllers\Mantenimiento\TipoActualizacionController.cs" />
    <Compile Remove="Controllers\Mantenimiento\TipoIncidenciaController.cs" />
    <Compile Remove="Controllers\Mantenimiento\TipoIntervencionController.cs" />
    <Compile Remove="Controllers\Mantenimiento\TiposClientesController.cs" />
    <Compile Remove="Controllers\Mantenimiento\TiposCoberturasController.cs" />
    <Compile Remove="Controllers\Mantenimiento\TiposLugarController.cs" />
    <Compile Remove="Controllers\Mantenimiento\TiposMantenimientoController.cs" />
    <Compile Remove="Controllers\Mantenimiento\TiposModoTerminalController.cs" />
    <Compile Remove="Controllers\Mantenimiento\TiposSeguridadTerminalController.cs" />
    <Compile Remove="Controllers\Mantenimiento\TiposTecnologiaController.cs" />
    <Compile Remove="Controllers\Mantenimiento\TiposTerminalController.cs" />
    <Compile Remove="Controllers\Administracion\DelegacionesController.cs" />
    <Compile Remove="Controllers\Administracion\ListasCorreoController.cs" />
    <Compile Remove="Controllers\Genericos\CodigosPostalesController.cs" />
    <Compile Remove="Controllers\Genericos\MotivoTipoEntidadController.cs" />
    <Compile Remove="Controllers\Genericos\PrioridadesController.cs" />
    <Compile Remove="Controllers\GestionIntervenciones\BloqueosController.cs" />
    <Compile Remove="Controllers\GestionIntervenciones\EstadosIntervencionController.cs" />
    <Compile Remove="Controllers\GestionIntervenciones\EstadosOdinController.cs" />
    <Compile Remove="Controllers\Mantenimiento\Configuracion\CalendarioLaboralesController.cs" />
    <Compile Remove="Controllers\Mantenimiento\Configuracion\NotificacionesEmailController.cs" />
    <Compile Remove="Controllers\Mantenimiento\AccionesController.cs" />
  </ItemGroup>
</Project>

$(NetCoreTargetVersion)
过程中
Linux
d37c9296-55fb-4c04-ad4e-3d1f5451dc28
真的
全部的
真的

问题是我需要复制我的
目录.Build.props
文件,现在正在工作。刚刚将这一行添加到我的
dockerfile

COPY Directory.Build.props ./

你能同时发布.csproj文件吗?请添加
AppManagerAPI.csproj
文件用AppManagerAPI.csproj@Jota.toledo更新我的问题似乎
$(NetCoreTargetVersion)
正在解析为
'
。这是标准宏吗@Edgar用这些信息和相关文件更新您的问题。也检查