我正在运行 cap production deploy
并且在 sudo: no tty present and no askpass program specified
之后我不断收到以下错误 /usr/bin/env sudo mkdir -pv /home/[user]/apps/[app name] as [user@myIP]
我不知道如何解决这个问题。
头文件:
require 'capistrano/setup'
require 'capistrano/deploy'
require 'capistrano/rvm'
require 'capistrano/bundler'
require 'capistrano/rails/migrations'
require 'capistrano/passenger'
require 'capistrano/safe_deploy_to'
Dir.glob('lib/capistrano/tasks/*.rake').each { |r| import r }
有任何想法吗?
最佳答案
一种解决方案是allow the sudo command on your server without entering a password,但这可能会带来安全风险。
或者,您可以修复 Capistrano 配置,因为可能出现问题。如果您向我们展示 deploy.rb
文件的内容会有所帮助,但我要做的第一件事是确保您在 default_run_options[:pty]
中将 true
设置为 deploy.rb
。或者,如果您缺少它,请添加该行。
Capistrano 2
default_run_options[:pty] = true
Capistrano 3
set :pty, true
关于ruby-on-rails - Capistrano "No tty present and no askpass program specified",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31014684/