はじめに
EC2上にrails環境を構築する手順を備忘録として残しておきます。
DBはRDS(MySQL)を使用
前提
EC2を作成し、ログイン済
※参考 EC2にログインする
RDS(MySQL)作成済
バージョン
ruby 2.7.0
rails 7.0.2
MySQL 8.0.28
bundler 2.1.2
手順
パッケージの最新化
$ sudo yum update -y
必要なパッケージのインストール
$ sudo yum -y install git make gcc-c++ patch libyaml-devel libffi-devel libicu-devel zlib-devel readline-devel libxml2-devel libxslt-devel ImageMagick ImageMagick-devel openssl-devel libcurl libcurl-devel curl
Node.jsのインストール
$ sudo curl -sL https://rpm.nodesource.com/setup_10.x | sudo bash -
$ sudo yum -y install nodejs
Yarnのインストール
$ sudo wget https://dl.yarnpkg.com/rpm/yarn.repo -O /etc/yum.repos.d/yarn.repo
$ sudo yum -y install yarn
rbenvとruby-buildのインストール
$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
$ source .bash_profile
$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
$ rbenv rehash
rubyのインストール
$ rbenv install 2.7.0
$ rbenv global 2.7.0
$ rbenv rehash
$ ruby -v #バージョン確認
bundlerのインストール
$ gem install bundle
$ bundler -v #バージョン確認
railsのインストール
$ gem install rails -v 7.0.2
$ rails -v #バージョン確認
MySQLインストール
$ sudo yum install mysql
$ sudo yum install mysql-devel
mysql8.0のリポジトリを追加する
$ sudo yum localinstall -y https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
mysql8.0のリポジトリを有効化する
$ sudo yum-config-manager --disable mysql57-community
$ sudo yum-config-manager --enable mysql80-community
mysql-community-clientをインストールする
$ sudo yum install -y mysql-community-client
mysqlログイン(確認)
$ mysql -u ユーザー名 -p -h RDSのエンドポイント
# パスワードを求められるのでRDSを作成した際に設定したパスワードを入力
railsの起動
$ rails new アプリ名 -d mysql
database.ymlファイルの編集
password: RDS作成時のパスワードを記載
host: RDSのエンドポイントを記載
サーバーの起動
$ bundle exec rails s -b 0.0.0.0
EC2のセキュリティグループ設定
現時点でEC2のセキュリティグループのインバウンドルールはSSH接続の22番ポートしか許可していない状態ですが、追加でカスタムTCPの3000番ポートを許可します。
ブラウザによる表示
EC2のパブリックIPアドレス:3000