问题标签 [sshkit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ssh - 是否可以在 Capistrano 3 中转发 X11 窗口?
我正在尝试从远程服务器转发 X11 窗口。通常我可以做类似的事情
ssh -X some@address
然后例如运行
feh image.jpg
image.jpg
在我的本地机器上查看图片。是否有可能在 Capistrano 3 中获得这种行为?我正在安装一个软件,它要求我执行通常的“nextnextnextfinish”。我想做类似的事情(在里面config/deploy.rb
)
set ssh_option, {:forward_x11 => true} #doesn't work
但似乎sshkit
没有那个选项。是否有某个地方的列表,ssh_option
或者sshkit
是否有其他解决方案?
amazon-ec2 - capistrano3 权限被拒绝(使用代理)
我正在尝试将我的 capistrano v2 脚本迁移到新的 v3.4 版本。
开发阶段一切顺利:我有一个 EC2 实例,部署完成没有错误。
我的生产脚本遇到了一些问题,因为我在生产服务器(EC2 实例)之前有一个代理(EC2 实例);在我的 capistrano v2 脚本中一切正常,现在我使用 cap-ec2 + capistrano v3.4 将我的应用程序仅部署到标记的服务器,但是当我尝试它时,我得到“Permission Denied”,我的生产服务器拒绝我的密钥。
也许我在脚本中设置了代理参数有问题,你能帮帮我吗?
非常感谢!!
在这里您可以找到代理参数:
CAPISTRANO V2(工作)
CAPISTRANO V3(不工作)
capistrano3 - 使用 capistrano 3 自定义输出
我需要更改使用 sshkit 格式化程序生成的输出,并且我无法安装其他 gem,但我可以调整我的 capistrano 3 配置。起初我尝试创建新的格式化程序(我只是复制粘贴漂亮的格式化程序,并进行了一些输出更改)。像这样https://gist.github.com/Dariusp/3e455fdb78b9f8636289
比set :format, :improvedformatter
在 deploy.rb 文件中。并添加
到 Capfile。但我总是得到错误“抽象格式化程序不应该直接使用,也许你想要 SSHKit::Formatter::BlackHole ”,就像我正在尝试直接使用抽象格式化程序一样。如果我尝试扩展 PrettyFormater,我会得到 PrettyFormatter 输出,而无需进行更改。它似乎总是执行父类方法。有什么方法可以在我的 capistrano 配置中创建和设置自定义格式化程序?
ruby - Capistrano 中的执行、测试和捕获命令有什么区别?
在SSHkit-Github上它说:
所有后端都支持执行(*args)、测试(*args)和捕获(*args)
从SSHkit-Rubydoc,我了解到这execute
实际上是test
?
Capistrano / SSHKit中的test
,execute
,和我什么时候应该使用两者有什么区别?capture
ssh - Capistrano:从本地变量提供密码以进行 ssh 登录,以便没有提示
我想知道是否可以使用询问的密码进行 ssh 登录,这interaction_handler
似乎不适用于此任务。到目前为止,我有:
在该执行行上,它尝试登录服务器并且服务器提示输入密码。我怎样才能用存储的那个来提供它:pw
?
ruby - 将 Ruby 与 sshkit 一起使用
rbenv 和 Ruby 是为登录sshkit
用户设置的,但路径似乎已损坏。
如何在 sshkit 中使用 Ruby 和 gems?
wordpress - 在本地主机上执行 Capistrano 更改命令
我也是 Capistrano 和 Ruby/Rake 的新手。
由于我在 Windows 本地工作,所以我时不时地过得很艰难。我正在运行capistrano-wpcli来推送和拉取我的 Wordpress 数据库。
该脚本在此过程中确实使用了 gunzip,它在 Unix 中运行良好,但在 Windows 中却不行。我发现我可以通过添加以下行来配置 SSHkit:
如果我只拉数据库,那效果很好,但是当我推送时,我仍然希望在远程主机上执行 gunzip。
我可以以某种方式连接到 cap wpcli:db:pull 以仅在该命令运行时设置配置,或者如果该命令正在本地主机上执行?
node.js - capistrano 3 不执行自定义远程任务
我在 capistrano 3 和 brunch 遇到了一个奇怪的问题。我想在远程服务器上执行早午餐,但什么也没发生。我的自定义远程任务如下所示:
当我运行“cap staging deploy”时,我可以看到命令被执行:
但是我的资产没有建成,什么也没做。如果我连接到我的服务器运行命令,一切正常。
我不明白这种行为,有人知道吗?
非常感谢你的帮助
我正在使用 Capistrano 版本:3.4.0(Rake 版本:10.5.0)
authentication - Capistrano 无法部署到新的 Ubuntu 服务器,因为 SSHKit / Net::SSH 无法进行身份验证
我正在尝试为我正在处理的应用程序的新版本设置暂存/测试服务器。所以我已经设置了它,以便我的本地帐户可以在部署服务器中进行身份验证,而无需输入密码:
现在我尝试加入 Capistrano,但它直接拒绝了我:
调查至今:
- 最初,我使用上次部署应用程序时所需的所有技巧来执行此操作,因此为了从等式中删除很多东西,我将所有文件移到一边,并让 Capistrano 生成新的部署配置。所以这一切现在都在最低限度的配置上运行,它仍然无法进行身份验证。
- 我最初假设默认情况下会使用公钥身份验证,因为 Capistrano 文档说将使用用户的 SSH 配置文件。我现在知道情况并非如此,您必须明确地将
'publickey'
其作为方法放入。所以在此之前,它要求输入密码。我希望让它不要求输入密码是我必须弄清楚的最困难的事情,但显然不是。 - 我不完全确定“密钥”设置是否必要,因为如果 Capistrano 没有使用我的配置中的设置,它也可能不会获取密钥文件。所以我尝试手动输入文件的路径,但无论如何它都不会改变。
- 我曾经
.pub
在密钥文件名的末尾有一个,直到意识到它可能需要私钥。但是在删除它之后,我得到了完全相同的结果。 - 感谢评论中的建议,我从服务器声明中删除了密码,因为我认为让 sudo 在没有密码的情况下工作是一个更干净的解决方案。但是,同样的结果。
现在我有点不知道如何诊断这个。
我不知道是否有任何 Capistrano 等价物ssh -v
,以便获得有关它正在尝试做什么的更多信息。
显然我的 SSH 连接很好,但 Capistrano 没有使用正确的设置进行连接,所以也许我的语法错误或同样明显的东西。为此,以下是我目前拥有的文件:
Capfile
:
config/deploy.rb
:
config/deploy/staging.rb
:
将问题追到 sshkit 中:
我注意到 capistrano 使用 sshkit 来完成实际的 SSH 工作,所以我为此编写了一个测试程序。
这表现出同样的问题,尽管据称默认使用相同的密钥,但它仍要求输入密码。尽管将详细程度设置为DEBUG
并没有真正添加任何有用的诊断来开始工作。
将问题追入 Net::SSH:
在为 sshkit 安装 gems 时,我注意到它正在使用另一个 SSH 库 net-ssh 来执行实际的 SSH 工作,所以我尝试制作一个刚刚使用它的新测试程序。
这次,调试输出很有用:
因此,它似乎只尝试了我的一个键,认为它无效,并在几行之后记录它不受支持。我的目录中还有另一个键,.ssh
它似乎甚至没有被尝试过。
ruby-on-rails - Capistrano 部署失败 - SSH 工具包?
前言说我是 Capistrano 的新手。话虽如此,我有一个功能性应用程序,之前我曾多次使用 Capistrano 部署过该应用程序。我对应用程序进行了几次更新并尝试了cap production deploy
. 我得到了这个错误输出:
在我看来,Capistrano 和 SSHkit 之间存在问题。我回顾了我的 Gemfile,bundle update
根据我的 git repo,它显示 SSHkit 从 v 1.10.0 升级到 v 1.11.1。
sshkit gem 中的更新会导致这个问题还是我应该去别处看看?如果是这样,我将如何恢复到 1.10.0 并在我的 Gemfile 中指定该特定版本以避免将来出现问题?