我有一个支持 Rails 7 和 Ruby 3 的 Rails 应用程序,它在我的带有 Ubuntu 22.04、ruby 3.0.2p107 和 Rails 7.0.2.3 的开发机器上运行良好。
现在我正在尝试设置 Capistrano(版本 3.17.0),以便将 Rails 应用程序部署到运行 Ubuntu 22.04 的服务器。但是,由于以下错误,我无法这样做:
SSHKit::Runner::ExecuteError: Exception while executing as username@server: rsa#set_key= is incompatible with OpenSSL 3.0
Run Code Online (Sandbox Code Playgroud)
Capistrano 似乎与 Ubuntu 22.04 中默认的 OpenSSL 库 OpenSSL 3.0 不兼容。我猜这是一个错误,但我没有找到任何报告它的帖子。我也没有找到任何解决方法。
我尝试通过安装 OpenSSL 1.1.1 来解决该问题,但 Rails 应用程序仍然使用 OpenSSL 3。也许解决方案是使用 --with-openssl-dir 选项重新安装带有 OpenSSL 1.1.1 的 ruby 3。
有什么建议吗?