Deployment Capistrano部署:安装程序正常,但未部署:检查

Deployment Capistrano部署:安装程序正常,但未部署:检查,deployment,capistrano,Deployment,Capistrano,用简单的配方测试capistrano $ cap deploy:setup * executing `deploy:setup' * executing "sudo -p 'sudo password: ' mkdir -p /u/apps/ [..] [..] deploy:setup按说明工作 但是 $ cap deploy:check * executing `deploy:check' * executing "test -d /u/apps/[..]

用简单的配方测试capistrano

$ cap deploy:setup
  * executing `deploy:setup'
  * executing "sudo -p 'sudo password: ' mkdir -p /u/apps/ [..]
    [..]
deploy:setup
按说明工作

但是

$ cap deploy:check
  * executing `deploy:check'
  * executing "test -d /u/apps/[..]
    [..]
运行
deploy:check
时,我得到以下错误:

The following dependencies failed. Please check them and try again:
--> You do not have permissions to write to `/u/apps/
[..]
--> `/u/apps/app/shared is not writable [..]
deploy:check
模式下,capistrano似乎没有使用sudo

我不明白

deploy:setup
中,整个目录结构是由capistrano创建的,没有任何问题

为什么capistrano不使用sudo,如
deploy:check

我遇到了:诀窍是显式配置capistrano不使用
sudo

您可以在
deploy.rb
文件中使用以下选项关闭该选项:

set :use_sudo, false


如果需要使用sudo,请在命令中使用:

run "#{sudo} apachectl restart"

我也遇到了这个问题,结果是capistrano在
组下创建了除共享文件夹之外的所有文件夹。SSH连接到服务器上,并执行一个长列表
ls-l
。如果看到共享文件夹的-root-root,则只需更新该文件夹的权限:

sudo chown <user> shared
sudo chgrp <user> shared
sudo chown共享
sudo-chgrp共享

在我的情况下,我需要使用sudo。如果你需要使用sudo,那么使用:
运行“#{sudo}apachectl restart”
–在哪里可以为部署中的操作更改此选项(sudo):不要选中我分配的操作(请参见我的问题)?首先尝试一些更简单的方法:使用
设置:使用sudo如何,在您的
deploy.rb中为true
?它已经存在了,这就是deploy:setup创建文件夹结构的方式。