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

标签 .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我收到下一个错误:

No executable found matching command "dotnet-DockerAPI2.dll



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

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

最佳答案

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

/test



,但我需要调查实际dll所在的路径,这就是

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

关于.net - Docker-dotnet-无法从入口点运行应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51538055/

相关文章:

c# - 无法建立连接,因为连接到 Azure IP 时目标计算机主动拒绝

docker - 为什么不以分离模式执行Docker入口点脚本?

python - 您如何在 GitHub 操作中使用 pipenv?

asp.net-core - 如何在 .Net 核心应用程序中发布特定于环境的应用程序设置?

c# - 根据执行 HttpWebRequest 的位置获得不同的响应

c# - 在 C# 中同时具有特定参数和参数方法重载的好处

c# - 解密 HTTPS 实例上生成的 WebResource.axd URL

linux - 如何防止docker在错误时停止/删除容器

c# - 找不到 Microsoft.AspNetCore.Antiforgery

asp.net-core - 从 ASP.NET Core 2.2 迁移到 3.1