Rey*_*rPM 53 node.js symfony bower
我有一个本地开发服务器,我测试了很多东西,现在我正在玩bower来管理我的Symfony2项目中的库的依赖项.在安装了NodeJS(v0.10.31)和bower(1.3.9)后,我尝试sp:bower:install
从控制台运行属于Symfony2 SpBowerBundle 的命令root
:
Symfony > sp:bower:install
Installing bower dependencies for "TemplateBundle" into "/var/www/html/tanane/src/Tanane/TemplateBundle/Resources/config/bower/../../public/components"
bower ESUDO Cannot be run with sudo
Additional error details:
Since bower is a user command, there is no need to execute it with superuser permissions.
If you're having permission errors when using bower without sudo, please spend a few minutes learning more about how your system should work and make any necessary repairs.
http://www.joyent.com/blog/installing-node-and-npm
https://gist.github.com/isaacs/579814
You can however run a command with sudo using --allow-root option
Run Code Online (Sandbox Code Playgroud)
我知道添加--allow-root
工作,因为我直接从bash测试,但显然不允许从bundle命令行.现在,运行bower的唯一方法是root
添加--allow-root
还是以另一种方式存在?
LPo*_*ski 140
下面的答案是针对symfony框架的捆绑, 但如果你使用短语" bower root " 从google来到这里,你有两个选择来解决这个问题:
选项1:您可以键入以下命令以root身份运行bower:
bower install --allow-root
Run Code Online (Sandbox Code Playgroud)
设置--allow-root命令参数允许root
选项2:使用允许root的全局设置,通过创建文件: /root/.bowerrc ,其中包含以下内容:
{ "allow_root": true }
Run Code Online (Sandbox Code Playgroud)
如何在SpBowerBundle symfony包中执行此操作:
可能您没有在SpBowerBundle配置中将sp_bower.allow_root设置为true
在bundle config中,默认情况下你设置了这样的东西:
allow_root: false # optional
Run Code Online (Sandbox Code Playgroud)
但你应该:
allow_root: true
Run Code Online (Sandbox Code Playgroud)
所以在app/config/config.yml中添加这个bundle配置
sp_bower:
allow_root: false # optional
Run Code Online (Sandbox Code Playgroud)
bundle config reference(所有设置):https: //github.com/Spea/SpBowerBundle/blob/master/Resources/doc/configuration_reference.md
sam*_*ize 16
我通过更改目录权限修复了类似的问题:
sudo chown -R $USER:$GROUP ~/.npm
sudo chown -R $USER:$GROUP ~/.config
Run Code Online (Sandbox Code Playgroud)
Adr*_*Onu 14
如果您在Docker容器上遇到此问题,只需在Dockerfile中添加以下行:
RUN echo '{ "allow_root": true }' > /root/.bowerrc
Run Code Online (Sandbox Code Playgroud)
这可能很愚蠢,但对我来说bower install --allow-root
没有用,但是bower --allow-root install
确实有效,使用 grunt-bower-install 版本 1.6.0
这是在以 root 用户运行的 docker 上进行的,也许会节省一些时间:)
归档时间: |
|
查看次数: |
57731 次 |
最近记录: |