【 Ruby on Rails 6.0 】AWS + Nginx + Unicornでデプロイ②
始めに
前回の記事で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コマンドを打ち込み、バージョンを確認しましょう。
バージョンが確認できたらインストール成功です!
終わりに
次回はデータベースの設定を進めていきます。
僕自身この過程でエラーがいくつか発生して詰まった経験があるので、そこも含めてアウトプットしていきます。
お疲れさまでした。。。
次回
データベース設定
Author And Source
この問題について(【 Ruby on Rails 6.0 】AWS + Nginx + Unicornでデプロイ②), 我々は、より多くの情報をここで見つけました https://qiita.com/anago1030/items/07f7026c0f4c42a63440著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .