我有以下命令:
docker run --privileged=true -it --rm \
-w /usr/src/app \
-v ./package.json:/usr/src/app/package.json \
-v .bowerrc:/usr/src/app/.bowerrc \
-v ./bower.json:/usr/src/app/bower.json \
-v ./build/npm.tmp/node_modules:/usr/src/app/build/npm.tmp/node_modules \
-v ./build/npm.tmp/bignibou-client/src/bower_components:/usr/src/app/build/npm.tmp/bignibou-client/src/bower_components \
digitallyseamless/nodejs-bower-grunt bash
我最终在{dock>容器而不是文件中将package.json
作为目录。
root@c706711a7ad4:/usr/src/app# cat package.json/
cat: package.json/: Is a directory
我该如何排序这个问题?我的语法出错了什么?
修改:
使用@manojlds的建议很好:
更改为-v $(pwd)/package.json:/usr/src/app/package.json \
解决了这个问题。
答案 0 :(得分:1)
尝试提供绝对路径,而不是相对路径:
-v /home/projects/package.json:/user/src/app/package.json
答案 1 :(得分:1)
digitallyseamless/nodejs-bower-grunt
回购中的Dockerfile似乎已经完成了您尝试做的大部分工作:
WORKDIR /usr/src/app
- 设置工作区ONBUILD COPY package.json /usr/src/app/
- 将package.json
文件复制到容器中。ONBUILD COPY bower.json .bowerrc* /usr/src/app/
- 将bower.json
复制到容器中。ONBUILD RUN bower install
- 安装bower 如果你很幸运,你可能只能$ docker run -it --rm digitallyseamless/nodejs-bower-grunt
,(或$ docker run -it --rm digitallyseamless/nodejs-bower-grunt bower
为凉亭),它会起作用。