【個人開発】Rails公開サーバーならHeroku一択な衝撃理由

サーバー

「Railsアプリを公開できるサーバーを知りたい、あとRuby on Railsにおすすめなサーバーってあるの?」

Ruby on Railsアプリをいざ公開、となったときに、そんな疑問が出てくるのではないでしょうか?せっかく作ったアプリでも、使えるようにしないと意味がありません。

ここでは、Ruby on Railsで作ったアプリを公開できる有名なサーバーと、Railsアプリの公開にHerokuというサービスがおすすめな理由を、個人開発向けに紹介します。Railsが使えるサーバーなんてありすぎて分からない、なんて方でも大丈夫です。

Railsアプリの公開ならHeroku一択

結論か言うと、Railsアプリの公開ならHeroku一択、です。個人開発の場合に限りますが、基本的にRailsアプリの公開は、Herokuがよいです。

Railsを公開できるサーバーはたくさんある

Railsアプリを公開できるサーバーはたくさんあります。だから、どのサーバーを使えばいいのか、迷うんですよね。まずは、 Railsアプリの公開ならHeroku一択である理由を説明する前に、Railsアプリの公開に使われるその他のサーバーを軽く見てみます。

日本でよく使われているのは、次の4つです。

  • AWS
  • GCP
  • Conoha VPS
  • Heroku

AWS・GCPはいわゆるクラウドサービスというものでして、ネットワーク構成やサーバースペックなどを細かく設定できるサービスです。Qiitaなどで使われています。

Conoha VPSは、VPS(仮想サーバー)で、AWS・GCPと似ていますが、そこまでの自由度はなく、一台のサーバーを自分で設定して使うというサービスです。VPSサービスは他にもありますが、Conoha VPSが多い気がします。

ここまでのサービスがIaaS(インフラとしてのサービス)と分類されるのに対し、4つ目のHerokuは、PaaS(プラットフォームとしてのサービス)に分類されます。Herokuでは、直接サーバーが提供されるのではなく、アプリの実行環境が提供され、難しい設定いらずでアプリを公開できます。

Herokuは情報量が多い

では、なぜRailsの公開サーバーならHeroku一択なのか、説明していきます。

まず、Herokuは、Railsのサーバーの中で一番情報量が多いです。AWSやGCPが少ないわけではないですが、GoogleやQiitaTeratailで検索してみると、Herokuに関する情報は新しく充実しています。

特にRailsアプリを初めて公開する場合は、情報の多さがカギになります。僕も、初めてRailsアプリを公開したときは、わからないことが多く、ネット上の情報で解決していました。Herokuを選ぶことで、トラブルの解決が楽になるのは間違いないです。

スペックも料金も個人開発ならHerokuで十分

Herokuは無料プランから使えるのですが、無料プランであってもスペックは十分です。

Herokuの無料プランのスペックを見てみます。

  • RAM(メモリ)512GB
  • プロセス数:2

実際のCPU数は公開されていませんが、メモリは512MBも使うことができます。これで足りるか?と思わるかもしれませんが、大規模なサイトでない限り大丈夫です。

また、キャッシュアドオンなどで使われるメモリは、これに含まれません。

無料プランでも独自ドメイン+SSLが使える

Herokuの無料プランに関してよく言われることの1つに、「無料プランだと、SSLが使えない」というのがあります。SSLは、通信を暗号化する技術のことで現代のインターネットでは、必須の機能です。

しかし、無料プランでも独自ドメインでSSLを使えます。少し設定が必要なのですが、簡単に行うことができます。これに関しては以下の記事が優秀なので、これを参考にすればOKです。

【完全無料】Herokuで独自ドメイン + HTTPSに対応する【Rails】 - Qiita
前置き 「heroku ssl 無料」とかで、ググると SSLの使用量は無料 Let's encryptを使えば無料 ただし、paid dynoを使う必要あり みたいな記事が多いと思いますが、 完全無料 で 独自ドメイン...

僕もこの方法で2つのサイトを無料プランで運用しています。

以上がRailsアプリの公開はHeroku一択な理由でした。どう考えても、よほど大規模なサービスでない限り、Herokuで十分だと思います。迷っているのなら、一番簡単で情報の多いHerokuで良いでしょう。

そもそもHerokuとは?

そもそもHerokuとはなんなのか?ということと最後に解説します。基本的には、あまり意識しなくてよいですが、知っておくと他のサービスとの比較がしやすくなるのかなって感じです。

PaaSと呼ばれるアプリの実行環境

Herokuは、PaaSと呼ばれるタイプのサービスです。PaaSは「Platform as a Service」の略で、アプリケーションの実行環境を提供するサービスです。

一般的なVPSなどのサーバーと異なり、ネットワーク設定や必要なソフトウェアのインストールはすでにされています。そのため、アプリの作成に集中することができ、難しい知識もいりません。

インフラはすべてAWS

おそらくRailsを公開するサーバーで、AWSとHerokuで迷った方もいると思います。

Herokuについては、インフラがすべてAWSです。つまり、Heroku自体のサーバーやネットワークは、AWSのものとほとんど同じなんです。信頼性や安定性という観点では、AWSとさほどかわらないと思ってよいでしょう。

Railsアプリの公開に使えるサーバーはたしかにたくさんあります。しかし、詳しい知識や難しい設定が必要なものも多いのが事実です。作ったアプリの公開で苦労するのはもったいないので、多くの場合は、もう迷わずHerokuを使えばOKです。

ぜひ、よいRuby on Railsアプリの公開ができるよう頑張ってください。

タイトルとURLをコピーしました