我是码头工人的新手,我在WebAPI
有一个简单的asp.net core
项目。我为我的项目创建了一个docker文件,但是我收到了以下错误:
No executable found matching command "api.dll"
我通过以下命令手动发布项目,并基于此创建了一个简单的docker文件。
dotnet publish -c Release -o ./app
Dockerfile:
FROM microsoft/dotnet AS base
WORKDIR /test/app
COPY ./app .
ENTRYPOINT [ "dotnet" , "api.dll" ]
当我通过手动安装文件夹和文件来运行项目时它工作得很好:
docker run --rm -it -p 9090:80 -v /path/to/my/publish/folder:/test/app microsoft/dotnet
但是,当我基于上述docker文件创建图像时
docker build -t myapp/test:dev .
然后尝试根据我收到错误的图像创建容器
docker run -it -p 9090:80 myapp/test:dev
而错误是:
No executable found matching command "api.dll"
我的做法有什么问题?谁有人可以帮忙?
PS:我在Mac OS X上运行。
检查api.dll的兑现,如果不能正常工作,请尝试添加“./”
FROM microsoft/dotnet AS base
WORKDIR /test/app
COPY ./app .
ENTRYPOINT [ "dotnet" , "./api.dll" ]