我使用dockerfile成功构建,但是当我尝试从构建映像运行新容器时,出现以下错误:
我该怎么办解决方案?
错误:/ bin / sh:1:[dotnet,:找不到
docker run命令:
docker run --rm -it -p 8080:80 furkaandogan/myapp:0.1
Dockerfile:
FROM microsoft/aspnetcore:1.1
ARG source
WORKDIR /app
ENV ASPNETCORE_URLS http://*:80
EXPOSE 80
COPY ./publish/myapp .
ENTRYPOINT ["dotnet", "myapp.dll"]
3 回答
Dockerfile的入口点行上有一些东西可以触发docker将其视为无效的json,而是回退到字符串的shell执行 . 它在你粘贴的内容中看起来是正确的,所以我会检查字符串末尾的字符,如智能引号或Windows换行符 .
我遇到了类似的问题 . 在我的例子中,问题出在Dockerfile的入口点语句中 . 我错过了两个参数"dotnet"和"url for dll"之间的 comma .
之前:
修复后应用:
问题是docker ignore文件不允许复制地址
我通过将地址添加到docker ignore文件或使用允许的文件地址解决了这个问题
Old dockerignore config
new dockerignore config