2016-11-07 43 views
10

Mac'ımda bir .NET Core uygulaması çalıştırmaya çalışıyorum. VS Core kullanıyorum ve projeyi .NET 1.1'e yükselttim. VSCode üzerinden çalıştırdığımda her şey iyi çalışıyor, ancak Docker'ı kullanarak çalıştırdığımda başarısız oluyor. Böyle Dockerfile görünüyorDocker'ı kullanarak dotnet 1.1'i çalıştırın

dotnet publish -c Release -o out 
docker build -t myApp . 

:

FROM microsoft/dotnet:1.1.0-preview1-runtime 
WORKDIR /service 
COPY out ./service/ 
ENTRYPOINT ["dotnet", "myApp.dll"] 

Esasen ben https://github.com/dotnet/dotnet-docker gelen adımlar takip ediyorum

ben aşağıdaki adımları. Ben aşağıdaki hata her zaman alıyorum: Buraya eksik ben emin değilim

Did you mean to run dotnet SDK commands? Please install dotnet SDK from: http://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409

...

Aşağıdaki KOPYA bildirimleri olması benim dockerfile değişti
+0

Uygulamanız * myApp * mı? – R0MANARMY

+1

Ne olduğunu buldum. Benim WORKDIR/hizmet, ancak ben her zaman benim/appervice/ kopyalayarak myApp.dll bulamadığı koştu. Benim görüşüme göre yanlış bir hata mesajı. Dockerfile yapmak için değiştirdim: COPY çıktı ./ ve her şey çalıştı –

+2

'dotnet' muhtemelen belirttiğiniz dll görmüyordu ve SDK komutlarından birini çalıştırmaya çalıştığını varsayarak. – R0MANARMY

cevap

4

:

COPY out ./ 

Daha sonra myApp.dll dosyasını bulmak mümkün olduğu için işe giriş noktası yaptı. Mesajın burada iyileştirilebileceğini düşünüyorum ama bu benim olanın olduğunu varsayıyor

+0

ilk nokta sonra sadece "dll" sahip olma% 100 katıdır Bu opak hata aynı zamanda DLL-isim aşırı fikirden gelebilir (https://stackoverflow.com/questions/ bakın 48812386/dockerize-bir-ASNET çekirdekli WebAPI/48812472 # 48812472) –