在一个基本的boot2docker项目中使用boot2docker和微软的基本aspnet映像:
FROM microsoft/aspnet:1.0.0-beta7
COPY project.json /app/
WORKDIR /app
RUN ["dnu", "restore"]
COPY . /app
EXPOSE 5000
ENTRYPOINT ["dnx", "-p", "project.json", "kestrel"]我可以使用docker build -t mvcapp .成功构建,但是当我尝试运行docker run -i -p 5004:5004 -t mvcapp时,我会得到以下错误:
Microsoft.AspNet.Server.Kestrel.Networking.PlatformApis/LinuxApis:dlopen (string,int) at Microsoft.AspNet.Server.Kestrel.Networking.PlatformApis+LinuxApis.LoadLibrary (System.String dllToLoad) 0x00000 in :0 at Microsoft.AspNet.Server.Kestrel.Networking.Libuv.Load (System.String dllToLoad) 0x00000 in :0 at Microsoft.AspNet.Server.Kestrel.KestrelEngine..ctor (ILibraryManager libraryManager,IApplicationShutdown appShutdownService) 0x00000 in :0 .
我尝试了几个不同的基本的aspnet图像,但没有成功。对于Mac来说,有什么特殊的步骤可以让它发挥作用吗?
编辑:我应该补充说,运行相同的entrypoint命令dnx -p project.json kestrel确实有效,并且我可以成功地访问localhost:5000。
发布于 2015-10-11 16:02:28
我在Ubuntu15.04上也有同样的问题。我还尝试在Dockerfile中添加"ENV RUNTIME_PACKAGES libunwind8 gettext libssl-dev libcurl3-dev zlib1g“,但它不起作用。根据Running-ASP.NET-5-beta4-in-Docker-with-DNX-runtime的说法,在beta7正常工作之前,它似乎是以前的版本。
我发现我使用了错误的docker映像"microsoft/aspnet:1.0.0-beta7“。在我做了下面的步骤之后,它工作得很好。
https://stackoverflow.com/questions/33057158
复制相似问题