为了追求更专业的 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 在提示输入 SUDO 密码到 Ubuntu 机器时挂起的问题,但解决方案并没有解决我的所有问题。
我已经设置default_run_options[:pty] = true
了我需要的接缝,但仍然得到 sudo 提示。
我正在使用无密码 ssh,因此 Capistrano 能够连接并执行所需的所有操作,而无需提示输入密码,并且我还使用 SSH 配置文件来处理代理转发,因此服务器也可以连接到我的 git 存储库。我已经确认这是有效的。
我发现其他人也有类似的问题 - Capistrano 使用 sudo 甚至使用“set :use_sudo, false” - 等等,但没有一个解决方案有效。
我正在使用default_run_options[:pty] = true
并尝试使用set :use_sudo, false
,default_run_options[:shell] = false
但我仍然遇到同样的问题。
您可以在此处查看我的终端输出 - http://pastebin.com/5xZmCnyA
我真的要疯了!任何帮助将不胜感激!!!
干杯