2017-02-12 15 views
10

Próbuję opublikować samodzielną aplikację, wykonaną w .net-core, wykonując kroki podane w https://docs.microsoft.com/en-us/dotnet/articles/core/deploying/index.Problemy z samodzielnym publikowaniem .net-core

Repozytorium z kodem jest https://github.com/fontanaricardo/httpecho

I wykonanie polecenia:

$dotnet build -r debian.8-x64 
$dotnet publish -c Release -r debian.8-x64 
$docker build -t httpecho . 

Zaczynając pojemnika:

$ docker run -p 5000:5000 httpecho 
Error: assembly specified in the dependencies manifest was not found -- package: 'Microsoft.AspNetCore.Hosting.Abstracti 
ons', version: '1.1.0', path: 'lib/netstandard1.3/Microsoft.AspNetCore.Hosting.Abstractions.dll' 

robię coś źle?

Aktualizacja

Otwórz plik httpecho.deps.json, w publikować folder odwołuje się do folderu, który nie istnieje.

"runtime": { 
     "lib/netstandard1.3/Microsoft.AspNetCore.Http.Abstractions.dll": {} 
    } 
+0

Pierwszy błąd mówi "Microsoft.AspNetCore.Http.Abstractions", a drugi mówi "Microsoft.AspNetCore.Antiforgery". Który to jest? – natemcmaster

+0

@natemcmaster usunął aktualizację 2, ponieważ spowodowało to zamieszanie. –

+1

Ten sam błąd dla frameworka 'ubuntu.16.04-x64' i' netcoreapp1.0'. – FireAlkazar

Odpowiedz

4

Twoje urządzenie ma problem z odpowiednimi pakietami distibute w twoim własnym wydaniu (próbowałem na moim dobrze działającym). Spróbuj naprawić pakiety przez: dotnet restore

Czy istnieje Microsoft.AspNetCore.Http.Abstractions.dll w debian.8-x64\publish? Jeśli nie, spróbuj dodać ręcznie (i wszystkie inne brakujące pliki * .dll), a następnie spróbuj uruchomić. Jeśli będzie działał bezbłędnie będzie problemem z właściwymi pakietami distibute

+0

Dzięki za odpowiedź, 'Microsoft.AspNetCore.Http.Abstractions.dll' znajduje się w folderze. Próbuję wykonać publikację z obrazu dokowanego 'microsoft/dotnet: 1.1.0-sdk-projectjson,' ale błąd nadal występuje. plik 'httpecho.deps.json' odwołuje się do' lib/netstandard1.3/Microsoft.AspNetCore.Hosting.Abstractions.dll'. –