【Ruby on Rails】本番環境でのrails sができなくなった
Qiita・プログラミング初心者です。
至らぬことが多いですが、よろしくお願いします。
実行環境
ruby 2.6.3
Rails 6.1.6.1
AmazonのEC2、RDS、デプロイにPumaとNginxを利用しています。
解決したいこと
Ruby on Railsでコミュニティサイト風のWebアプリを制作中です。
EC2にログインして本番環境でアプリケーションを起動しようと$ rails s -e productionを実行したところ、以下のようなメッセージが出るようになり、起動もできなくなってしまいました。
rbenv: rails: command not found
The `rails' command exists in these Ruby versions:
3.1.2
どうやらポートフォリオで色々している間に、rubyのバージョン設定を触ってしまっていたようです。ローカル環境ではrails sもアプリケーションの起動も出来ているのですが…。
該当するソースコード
Gemfile
source 'https://rubygems.org'
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
ruby '2.6.3'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails', branch: 'main'
gem 'rails', '~> 6.1.6', '>= 6.1.6.1'
(以下略)
.ruby-version
ruby-2.6.3
自分で試したこと
インストールされているrubyのバージョンを確認すると
ec2-user:~/environment/~~~ (main) $ rvm list
=* ruby-2.6.3 [ x86_64 ]
ruby-3.1.2 [ x86_64 ]
# => - current
# =* - current && default
# * - default
ec2-user:~/environment/~~~ (main) $ ruby -v
ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-linux]
バージョンはEC2にログインした状態でも同様でした。
また、$ rvm --default use 3.1.2で 3.1.2をデフォルトで使うよう設定したところ、
ec2-user:~/environment/~~~ (main) $ rails s
bash: rails: command not found
ローカルのrails sもコマンドがないと返されてしまったため慌てて元に戻しました。。
これまで出来ていたように、rails sで本番環境のアプリケーションを起動できるようにしたいです。
①rubyのバージョンをローカルもEC2も3.1.2にしてしまう
②現状の2.6.3のままrailsコマンドを使えるようにする
のどちらかだと思うのですが、いずれも今のところ上手く行っていません。解決方法や解決の前に確認すべきことなど、ご教示いただけると幸いです。
0