RUN命令无法访问卷
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RUN命令无法访问卷相关的知识,希望对你有一定的参考价值。
看来RUN
中的dockerfile
看不到我的卷目录ENTRYPOINT
可以。
这是一个有问题的dockerfile
和docker-compose.yml
的例子:
FROM microsoft/dotnet:2.0-sdk
EXPOSE 5000
ENV ASPNETCORE_ENVIRONMENT=Development
WORKDIR /src/testing
RUN dotnet restore
ENTRYPOINT ["dotnet", "run", "--urls=http://0.0.0.0:5000"]
docker-compose.yml
:
version: "3.4"
services:
doctnetcore-api-project:
build: ./api/
container_name: doctnetcore-api-project
image: doctnetcore-api-project:development
restart: 'always'
networks:
- mynetwork
volumes:
- /api/src:/src
networks:
mywebmc:
external:
name: mynetwork
当我运行docker-compose up
时,我收到如下错误:
MSBUILD : error MSB1003: Specify a project or solution file. The current working directory does not contain a project or solution file.
ERROR: Service 'doctnetcore-api-project' failed to build: The command '/bin/sh -c dotnet restore' returned a non-zero code: 1
如果我在运行RUN dotnet restore
之前注释掉dotnet restore
并手动运行docker-compose
,它运行正常。
所以无论出于什么原因,它出现RUN
无法看到我的卷目录,ENTRYPOINT
可以看到我的卷目录。
Dockerfile中的语句在构建时执行(docker build
),此时不存在卷。
相反,当您运行可访问可能映射的卷的容器(ENTRYPOINT
)时,将执行docker run
。
以上是关于RUN命令无法访问卷的主要内容,如果未能解决你的问题,请参考以下文章
Flutterflutter doctor 报错Android license status unknown. Run `flutter doctor --android-licenses‘(代码片段
svn报错cleanup failed–previous operation has not finished; run cleanup if it was interrupted的解决办法(代码片段
ubuntu16.04 yum报错:There are no enabled repos. Run “yum repolist all“ to see the repos you have.(代码片段