0
公開:基本的なコード構文を超えてRubyについてはほとんど分かりません。私の馬鹿馬鹿しくする既存のRubyバージョンの隣に新しいRubyバージョンを実行
Ruby 1.8のOpenSSLライブラリは、TLS 1.2をサポートしていないようです。しかし、1.8に依存しているアプリケーションがあるので、新しいバージョンのRubyを同じシステム上で同時に実行し、同じ宝石の新しいバージョンをセットアップすることができるかどうかを確認したい。
現在、バージョン1.8は/usr/lib/ruby/1.8にあります。理想的には、私は同じ構造を保ち、新しいバージョンをインストールしたいと思います(最新の安定したバージョンが2.3.xか2.4.xかに関係なく)。
私はRuby管理者ではありません。他の人からサーバーを継承して、Rubyが他のRuby体験がなくても、Rubyが最良の方法であると判断してから退社しました。
- バックワードと互換性のあるRubyのバージョン(たとえば、2.4.1で大きな変更を加えずに1.8のバージョンで構築されたアプリ)はどうでしょうか。
- どのように宝石が動作するか更新されます。 2.4.1は1.8から宝石を使用できますか、または特定のRubyのバージョンに宝石を使用できますか?ミックス・アンド・マッチができますか?何らかの移行パスがありますか?
- 2つの異なる並行バージョンを適切に管理する方法(あるバージョンを他のバージョンよりも上で使用するように指示する方法、または既存のアプリケーションが新しいバージョンを自動的に使用しようとしないようにする方法)
- インストールのベストプラクティス(私は通常ソースからコンパイルしますが、提案は公開しています)。
- Rubyアプリケーション全体を更新せずにRubyのOpenSSLライブラリを更新するだけでも可能ですか?現在、OpenSSL 0.9.8oを使用しているため、かなり遅れています。
サーバでDebian 6.0.6が動作しています(私はRed HatやCentOSに精通していますので、この問題に関するパッケージ管理などのヒントは歓迎されます)。
明らかに、システムのOpenSSLライブラリは0.9.8oに戻っています。ああ。システムがより大きな見直しを必要とするのは明らかですが、それははるかに大きなプロセスになるでしょう。私は開発者のショーストップ問題を解決するために暫定的な修正を見つけることを試みています。 私はOpenSSL 1.0.2lをシステム上の別のフォルダ/usr/local/openssl/1.0.2lにインストールしています。既存のRubyのインストールを更新して、単にそれを指すようにすることはできますか? – jhilgeman
「rvm」や「rbenv」がインストールされていないようです。 – jhilgeman
OpenSSLs ABIも0.9.8から1.0.2の間で変更されました。したがって、すでにコンパイルされたRuby 1.8は、おそらく再コンパイルせずにOpenSSL 1.0.2で正しく動作しません。 –