我正在尝试配置 Capistrano 以便它适用于我们的服务器设置。我们正在部署 symfony 项目,所以我也在使用 capifony。我仍然遇到一些权限问题。
在我们的服务器上,每个项目都作为项目用户运行,因此每个项目都有自己的用户。所以我配置了 use_sudo 并将其设置为 true,我将 admin_runner 配置为项目的用户。但它仍然不起作用,所以我修改了 capifony 以开始使用 try_sudo 而不是常规运行。这使它工作得更好一点。但是我对在这种情况下使用什么感到有点困惑。你有 try_sudo、sudo 和运行。但是哪个用例需要哪个?
- 当您使用运行时,我认为它将始终是您的本地用户
- try_sudo我认为会检查 use_sudo 标志是否为真,如果是,它将使用 sudo 命令,如果不是,它将使用本地用户。如果您配置了 admin_runner,它将向配置为 admin_runner 的用户发送 sudo
- sudo将始终尝试 sudo
现在我的问题是 deploy:symlink 方法,这也只是一个常规运行命令,因此它以本地用户身份执行,当我尝试查看网站时会出现权限问题。
那么谁能告诉我我对这 3 个命令的描述是否正确?还有谁知道应该如何使用 admin_runner 和 use_sudo ,以便符号链接也正确完成(以及 capistrano 完成的所有其他命令)?
亲切的问候,
大安