LoginSignup
1
1

More than 3 years have passed since last update.

【 Ruby on Rails 6.0 】AWS + Nginx + Unicornでデプロイ②

Last updated at Posted at 2021-02-24

始めに

前回の記事でEC2インスタンスを作成しサーバーを構築する工程まで完了しました。
今回は本番環境が動作するために必要設定ファイルをインストールしていこうと思います。

目次

目次 内容
セクション1 EC2インスタンス作成
セクション2 Linuxサーバーを構築(今回の内容)
セクション3 データベース設定
セクション4 EC2上でGemをインストールし環境変数を設定
セクション5 Railsアプリを起動
セクション6 Nginxの導入
セクション7 自動デプロイ
セクション8 独自ドメイン取得

Linuxサーバーを構築

最初にyumというコマンドを使ってこのサーバに元々あるプログラムをアップデートします。
こうしたプログラムを パッケージと呼びます。

yumコマンド

Linuxにおけるソフトウェア管理の仕組みです。MacOSにとってのhomebrewと同じ役割 を果たします。yumコマンドを利用することで、yumの管理下にあるプログラムのバージ ョンを管理したり、一括でアップデートしたりできます。

ターミナル
# SSHログイン実行
$ ssh -i ダウンロードした鍵の名前.pem ec2-user@Elastic IPアドレス

# パッケージをアップデート
[ec2-user@ip-172-31-25-189 ~]$ sudo yum -y update

# 必要なパッケージを諸々インストール
[ec2-user@ip-172-31-25-189 ~]$ 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

Node.jsをインストール

サーバーサイドで動くJavaScriptのパッケージです。今後のデプロイに向けた作業の中で、CSSや画像を圧縮する際に活用されます。

ターミナル
[ec2-user@ip-172-31-25-189 ~]$ sudo curl -sL https://rpm.nodesource.com/setup_6.x | sudo bash -
[ec2-user@ip-172-31-25-189 ~]$ sudo yum -y install nodejs

確認画面が出てきた場合は、「y」→returnキーで確定してください。 これでNode.jsのインストールは完了です。

Yarnをインストール

Railsに搭載されているJavaScriptのパッケージを管理するためのパッケージマネージャです。Rails6.0以降のバージョンではアプリケーションを動かすために必要です。

ターミナル
[ec2-user@ip-172-31-25-189 ~]$ sudo yum -y install wget
[ec2-user@ip-172-31-25-189 ~]$ sudo wget https://dl.yarnpkg.com/rpm/yarn.repo -O /etc/yum.repos.d/yarn.repo
[ec2-user@ip-172-31-25-189 ~]$ sudo yum -y install yarn

rbenvとruby-buildをインストール

次に、rbenvとruby-buildをインストールします。rbenvとruby-buildは、Rubyのバージョンを管理する際に組み合わせて使うツールになります。これらはRubyをインストールする前に、インストールする必要があります。 ruby-buildはrbenvのプラグインであり、ruby-buildによってRubyの様々なバージョン (2.6.5など)をインストールすることができます。 rbenvを使用することでrubyのバージョンを切り替えることできます。

ターミナル
#rbenvのインストール
[ec2-user@ip-172-31-25-189 ~]$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv

#パスを通す
[ec2-user@ip-172-31-25-189 ~]$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile

#rbenvを呼び出すための記述
[ec2-user@ip-172-31-25-189 ~]$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

#.bash_profileの読み込み
[ec2-user@ip-172-31-25-189 ~]$ source .bash_profile

#ruby-buildのインストール
[ec2-user@ip-172-31-25-189 ~]$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

#rehashを行う
[ec2-user@ip-172-31-25-189 ~]$ rbenv rehash

Rubyをインストール

以下で実行するコマンド群は、インストールするRubyのバージョン、自身のアプリケー ションで使っているRubyのバージョンによって適宜変更してください。 今回は、2.6.5をインストールしていきます。

ターミナル
[ec2-user@ip-172-31-25-189 ~]$ rbenv install 2.6.5 #バージョンは都度確認すること
[ec2-user@ip-172-31-25-189 ~]$ rbenv global 2.6.5
[ec2-user@ip-172-31-25-189 ~]$ rbenv rehash
[ec2-user@ip-172-31-25-189 ~]$ ruby -v

1つ目のコマンドで、Rubyの2.6.5のバージョンをインストールしています。
Rubyのインストールには時間がかかります。ターミナルに「Installing ruby-2.6.5...」といった表示が出たまま止まって見えますが、そのまま待ちましょう。
2つ目のコマンドは、EC2インスタンス内で使用するRubyのバージョンを決めるものになります。
3行目では再びRehashを行っています。
最後にruby -vコマンドを打ち込み、バージョンを確認しましょう。
スクリーンショット 2021-02-24 20.06.55.png
バージョンが確認できたらインストール成功です!

終わりに

次回はデータベースの設定を進めていきます。
僕自身この過程でエラーがいくつか発生して詰まった経験があるので、そこも含めてアウトプットしていきます。
お疲れさまでした。。。

次回
データベース設定

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1