【发布时间】:2012-09-14 08:05:06
【问题描述】:
为了追求更专业的 WordPress 开发和部署环境,我正在尝试使用 Capistrano 从我的本地开发环境部署到登台和生产服务器,但我不能完全让它工作。
我在 Site5 共享主机上,并且正在部署到具有两个不同域的一台服务器 - staging.example.com 和 example.com。
我以https://github.com/markjaquith/WP-Stack为基础,添加了
set :user, "myserveruser" 到我的 config.rb 文件,因为没有它,连接就无法工作。
运行cap deploy:check告诉我“你似乎已经安装了所有必要的依赖项”,我可以运行cap deploy:setup,它成功连接到登台和生产创建发布和共享目录等。
当我运行cap deploy 时,问题就来了。在提示我输入 sudo 密码之前,一切都可以正常工作。这不是一个正常的登录提示,但不允许我输入密码。因为我在共享主机上,所以无论如何我都没有 sudo 访问权限。
它类似于这个问题Capistrano is hanging when prompting for SUDO password to an Ubuntu box,但解决方案并没有解决我的所有问题。
我已经设置了default_run_options[:pty] = true,这是我需要的,但仍然得到 sudo 提示符。
我正在使用无密码 ssh,因此 Capistrano 能够连接并执行所需的所有操作,而无需提示输入密码,并且我还使用 SSH 配置文件来处理代理转发,因此服务器也可以连接到我的 git 存储库。我已经确认这是有效的。
我发现其他人也有类似的问题 - Capistrano using sudo even with "set :use_sudo, false" - 等等,但没有一个解决方案有效。
我正在使用 default_run_options[:pty] = true 并尝试使用 set :use_sudo, false 和 default_run_options[:shell] = false 但我仍然遇到同样的问题。
你可以在这里查看我的终端输出 - http://pastebin.com/5xZmCnyA
我真的要疯了!任何帮助将不胜感激!!!
干杯
【问题讨论】:
标签: wordpress capistrano sudo