浏览Windows 10中的docker容器

时间:2018-04-13 00:49:39

标签: node.js docker windows-10

我使用docker for windows创建了一个图像并在本地部署它,但是我收到一个错误,指出找不到某个文件。这可能是构建的一个问题,所以我想我会看到容器的文件来解决这个问题并避免任何未来的问题。

我尝试使用

在docker上运行powershell
docker run -it node-web-app powershell

但是我收到了错误

C:\Program Files\Docker\Docker\Resources\bin\docker.exe: Error response from 
daemon: OCI runtime create failed: container_linux.go:348: starting 
container process caused "exec: \"powershell\": executable file not found in 
$PATH": unknown.

任何人都有这方面的经验,可以指出我正确的方向吗?

我的码头文件:

# Create container with node and npm preinstalled
FROM node:latest

# Create app directory
WORKDIR /app

# Install app dependencies
COPY package*.json ./
RUN npm install --only=production

# Bundle app source
COPY . .

# Bind to port 8080
EXPOSE 8080

# Run the server
CMD [ "npm", "run", "start-prod" ]

2 个答案:

答案 0 :(得分:2)

您的dockerfile表示您已根据node:latest制作了图片。 现在,如果您前往码头工具中心,https://hub.docker.com/_/node/,您会看到node:latest图片的详细信息。

这会转到https://github.com/nodejs/docker-node/blob/9023f588717d236a92d91a8483ff0582484c22d1/9/Dockerfile

在此dockerfile中,您会看到它是从buildpack-deps:jessie构建的。 基本上这是一个debian图像,这意味着它不会有PowerShell。 因此,@ fly2matrix指出错误非常清楚地表明容器内的powershell变量中没有名为PATH的可执行文件。

答案 1 :(得分:1)

此错误表示您的容器中没有 Powershell 可执行文件。

我假设您的基本映像是Linux而不是Windows。 查找Dockerfile的FROM语句。

请您分享您的Dockerfile以确定真正的问题吗?