はじめに
現在railsチュートリアルを進めながら学習しているプログラミング歴半年の者です。
ほかにも、チュートリアルを見ながらアプリを作っており、今回アプリ作成中herokuにデプロイしようとしたところエラーが出てしまい、もう一度チュートリアルを見てみるとまずはRubyのバージョンを2.5.1に合わせること、とあったため、バージョンを変更結果を下に書きます。今回以下参考にさせていただきました。
(参考)
① rbenvでrubyのバージョンを切り替える
② rbenv を使って ruby をインストールする(CentOS編)
まず、Gemfileを見てみると、
・
・
ruby '2.4.1'
・
・
と書いてあったので、バージョンがあっていません。
下の(参考)①より、
$ rbenv versions
を実行すると command not foundが出てしまいました。以降いろいろ試してもずっとそれが出ます。
もしかして、そもそもrbenvを使ってRubyをインストールしていなかった!?それならどうやってRubyをインストールしていたのだろう・・・といろいろわからないのですが、とりあえず、
(参考)②より、
1 Gitが入っていなかったらインストール
sudo yum -y install git
Gitは入っていると思うけどとりあえずやります。
2 rbenvをインストール(clone)する
$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
3 環境設定
# PATH に追加
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
# .bash_profile に追加
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
# 上記設定の再読み込み
$ exec $SHELL -l
とりあえず素直にやります。
4 rbenvの確認
$ rbenv --version
5 ruby-buildをインストール(clone)する
$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
6 Rubyの該当するバージョンを確認
以下、利用可能なバージョンがずららーっと出てきました。その中に2.5.1を見つけました。
$ rbenv install --list
7 該当するバージョンをインストール
$ rbenv install -v 2.5.1
8 環境確認
再読み込み
$ rbenv rehash
インストールされているRuby一覧を確認
$ rbenv versions
rbenv: version `2.4.1' is not installed (set by /home/ec2-user/environment/アプリ名/.ruby-version)
system
2.5.1
2.4.1がインストールされてないよって出た。
とりあえず、最新版に設定
$ rbenv global 2.5.1
バージョン確認。なんか変。。。
$ ruby -v
rbenv: version `2.4.1' is not installed (set by /home/ec2-user/environment/zorotenki/.ruby-version)
まだ2.4.1がインストールされてないよって出る。
rbenv: version `2.0.0′ is not installed の対処法
このサイトを参考に。
どうやらカレントディレクトリに以下のように書いてあったみたいなので
2.4.1
これを2.5.1に修正し、以下を実行
$ ruby -v
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]
できた!
最後にGemfileも 2.5.1と書き直しておきました。
Gemfileって手動で書き直しであってますよね・・・?
なにか間違っているところ、ご指摘があればコメントください。