2017-10-06 85 views
1

我想dockerize我的应用程序运行shell,我想运行,为了进入我的容器,看包装是否正确安装,文件被复制等无法在我的容器

这里是我的Dockerfile:

FROM node:8.6 
RUN mkdir /app 
WORKDIR /app 
COPY .*.json . 
COPY src/ . 
USER node 
RUN yarn global add @angular/cli 
EXPOSE 4200 

的问题是,我无法通过docker run运行我的容器:

docker run my-notes -it --rm ash 

我看到的错误:

container_linux.go:262: starting container process caused "exec: \"-it\": executable file not found in $PATH" 
docker: Error response from daemon: oci runtime error: container_linux.go:262: starting container process caused "exec: \"-it\": executable file not found in $PATH". 
ERRO[0000] error waiting for container: context canceled 

我在做什么错?

回答

2

的问题是,你需要在此之后,图像名称前通过码头工人选项不是:

docker run [OPTIONS] IMAGE [COMMAND] [ARG...] 

我已经回答了这个问题here为好。希望能帮助到你。

+1

另外'灰'不存在'节点'图片 – Matt

+0

这是我的问题!非常感谢你! – TheOpti

0

node图片附带sh,bashdash

如果你想ash可以安装包,但它只是一个符号链接/bin/dash所以你可以运行:

docker run -it --rm my-notes dash 

要安装ash包,以下内容添加到您的Dockerfile

RUN set -uex; \ 
    apt-get update; \ 
    apt-get install ash; \ 
    apt-get 

然后ash/dash可以运行

docker run -it --rm my-notes ash