Docker-dotnet-无法从入口点运行应用

时间:2018-07-26 11:44:58

标签: .net docker .net-core command-line-interface

我的dockerfile中的入口点有奇怪的问题。

这是我的dockerfile:

FROM microsoft/dotnet:latest

WORKDIR /test

ADD . /test

RUN ["dotnet", "restore", "DockerAPI2.sln"]
RUN ["dotnet", "build", "DockerAPI2.sln"]

EXPOSE 4000/tcp

ENTRYPOINT [ "dotnet", "DockerAPI2.dll" ]

当我运行docker run --name test -d -p 4001:4000 -v "C:\Users\random\docker":"/var/lib" -t test-img:latest时 我收到下一个错误:

  

未找到与命令“ dotnet-DockerAPI2.dll”匹配的可执行文件

我注意到的是,由于某些xy原因,他在dotnet和DockerAPI2.dll之间放置了“-”,这是无效的。我想知道这是一个错误还是有某种解决方法?

PS:我正在运行带有Linux容器的Windows Docker,并且已经在防火墙中启用了4001。

2 个答案:

答案 0 :(得分:1)

答案很简单。我在寻找WORKDIR的目录,即

  

/测试

,但是我需要查看实际dll所在的路径,即

  

/test/DockerAPI2/bin/Debug/netcoreapp2.0 /

答案 1 :(得分:0)

您可以尝试构建-o / test 这将重定向输出目录。