我正在尝试使用docker中的create-react-app运行一个新创建的反应应用程序。我有一个Docker文件,它成功地允许我构建图像,但当我尝试运行它时,我得到:
PS C:\Users\Bertinator\desktop\gamelist\client> docker run client4 .
container_linux.go:265: starting container process caused "exec: \".\":
executable file not found in $PATH"
C:\Program Files\Docker\Docker\Resources\bin\docker.exe: Error response from
daemon: oci runtime error: container_linux.go:265: starting container
process caused "exec: \".\": executable file not found in $PATH".
ERRO[0001] error waiting for container: context canceled
PS C:\Users\Bertinator\desktop\gamelist\client>
这是我的Docker文件,它位于我的create-react-app项目的根文件夹中:
FROM node:7.8.0
ENV NPM_CONFIG_LOGLEVEL warn
COPY . .
RUN npm run build --production
RUN npm install -g serve
CMD serve -s build
EXPOSE 5000
答案 0 :(得分:1)
您是从Windows机器上的Linux docker镜像运行的吗?这不起作用。
参考http://training.play-with-docker.com/beginner-linux/
(...)Linux容器需要Docker主机运行Linux内核。例如,Linux容器无法直接在Windows Docker主机上运行。 Windows容器也是如此 - 它们需要在具有Windows内核的Docker主机上运行。
当你说docker run client4 .
时,你要求docker运行该容器并执行.
(点)命令,这是没有意义的。这就是你得到第一个错误的原因。