さくらVPS&AWS&VULTR EC2/CentOS 6.5へのRailsサーバ構築手順![Ruby]


さくらVPS/AWS EC2/VULTRのCentOS 6.5にRailsサーバを構築するための手順をまとめました。
Railsの簡単なサーバの構築から、各種ミドルウェアの導入まで少しずつ充実してきたかなと思います。
用途に応じて、ぜひご活用ください。また、もしこういうミドルウェアの導入方法がわからないといった
ことがあれば、お気軽にコメントをください!


🚜 最近のサーバのお気に入り

最近VULTRのサーバが気に入っています。VULTRのメリットはこちら

* SSDベースのサーバを時間単位の課金体制(初回費用や解約月のタイミングなど気にしなくていい)
* メモリ768MBで$5/月
* 性能もEC2等と比べてもいい

ということでもし試して見たい方は拙著『VULTR 日本リージョン/MEM 768MB/SSD 15GB VPS $5/月を借りてみた!』を読んでみてください^^

🐝 (A) AnsibleやVagrantを使ったサーバ構築

Ansibleはすごく簡単にサーバ構築手順をコード化できるツールです。
めちゃくちゃ便利ですので、ぜひ使って見てください。

(A-1) AWS/VULTR + AnsibleでベーシックなRailsサーバを簡単構築

(A-2) Vagrant/AWS + AnsibleでCentOS/Nginx/MySQL/RVM/Ruby2.1.2環境を構築

🚌 (B)これだけは導入したい

(B-1) 初期状態から鍵認証SSHでの接続まで

初期状態からSSHで接続できるようにするまです。

(B-2) iptableの設定

ipテーブルs(通信ポートを制限できるファイアウォール用のパッケージ)の設定です。

(B-3) logwatchの導入

logwatchはログを整形してメールで1日1回送ってくれるパッケージの設定です。

(B-4) ipv6の停止/日本語化/denyhostsの導入

ipv6の停止/日本語化/denyhosts導入についての手順です。

(B-5) Nginxの導入

Webサーバnginxの導入手順です。

(B-6) Passengerの導入

ApacheでRailsを使えるようにするためのパッケージの導入手順です。

(B-7) PostgreSQL 9.3の導入

MySQLと並ぶオープンソースのRDBMであるPostgreSQLの導入手順です。海外のRailsプロジェクトではMySQLよりもPostgreSQLのほうが人気があるっぽいです。Herokuを使う方にはお勧めです。

(B-8) Ruby 2.0.0/RVMの導入

RVM(Ruby Version Management)とRuby 1.9.3の導入手順です。

🤔 (C) 必要に応じて

(C-1) MySQL 5.5の導入

データベースMySQLの導入手順です。

(C-2) メールサーバ Postfix/Dovecotの導入

メールサーバのPostfix/Devocotの導入手順です。これは、Railsサーバには直接不要ですが、メールを使ったサービスを作る場合に使えると思います。

(C-3) 高性能な分散メモリキャッシュサーバ memcached

データベースへの問い合わせ結果を一時的にキャッシュすることで、データベースへのアクセス回数を減らし、動的なWebアプリケーションの高速化やスケーラビリティの向上のために利用されているツールです。次のRedisと同じく、高速化の手伝いをしてくれます。

(C-4) 永続化対応のインメモリDB Redisの導入

memキャッシュdライクなkey-value方式と、永続化対応のインメモリDB『Redis』の導入手順です。こちらも必須のツールではないですが、高速化の際に活用できますよ!

(C-5) Apacheの導入

WebサーバApacheの導入手順です。

🍣 (D) AWS編

(D-1) Elastic Block Store(EBS)をAWSのEC2にヒモ付

AWSのElastic Block Store(EBS)の設定手順です。

🚕 (E) Ubuntu編

(E-1) Ubuntuサーバのスワップ領域の割り当て

Ubuntuでスワップ領域を割り当てるための手順です。題名のCentOSから離れていますが(笑)

🐠 (F)番外編

(F-1) VULTR 日本リージョン/MEM 768MB/SSD 15GB VPS $5/月を借りてみた!

日本リージョン/MEM 768MB/SSD 15GBが時間単位で借りれて、月間でもわずか$5。初期費用がいらなかったり、初回デポジット2倍キャンペーンをやっていたりとお勧めです!

(F-2) AWS EC2のAmazon Linux AMIでRailsサーバを立ち上げる際の違い

AmazonのAWSを使ってRailsサーバを立ち上げる際の手順です。基本は(1)-(8)でいけるのですが、若干違いがあったのでその部分のメモです。

(F-3) 導入の前に/コストパフォーマンスに優れたRailsサーバの紹介

2012年はRailsサーバの選択肢がより多くなった1年です。そこで個人が使うのにコストパフォーマンスが最適なサービスをいくつかチョイスしてみました!

(F-4) Webサイトの速度改善を提案してくれるブラウザアドオン「YSlow」

アプリケーションのレスポンス向上を目指すのに最適なアドオンの紹介です。

🐰 変更来歴

(13/01/27 22:00)「(9) AWS EC2のAmazon Linux AMIでRailsサーバを立ち上げる際の違い」を追加

(13/01/30 16:45)「(9) メールサーバPostfix/Dovecotの導入」を追加

(13/03/01 16:45) memキャッシュdとRedisの導入手順を追加

(13/03/02 13:15) Postgresの導入手順を追加

(13/09/24 07:55) Ruby 2.0.0対応 & CentOS 6.4対応、記述ミス修正

(14/04/23 20:00) AWS - CentOS 6.5、nginx環境の構築手順を追記

(14/04/29 08:00) Ubuntuサーバのスワップ領域の割り当てを追加

(14/05/02 08:55) Elastic Block Store(EBS)をAWSのEC2にヒモ付

(14/08/04 19:25) VULTRの説明や、Ansibleの解説記事を追加

(2015-03-16 10:10) Ansibleの解説記事を追加

📚 おすすめの書籍