俺の開発研究所

Ruby on Rails、Linux、Windowsを中心にIT技術系の備忘録とか。よく忘れるので。

*

Ruby on RailsのPaaS「Heroku」の環境構築手順

      2015/05/15

Ruby on RailsのPaaS「Heroku」を使ってみた。

きっかけは、Facebookアプリ作ってみたいなーと思って、開発者登録して新規アプリ作成しようとしたとき。

Web Hostingのチェック欄横に、「Yes, I would like free web hosting provided by Heroku」って書かれてて何ぞ?となった。

調べてみたら、Ruby on Railsのクラウドホスティングサービスらしい。

さらに、Webアプリケーションサーバ の1プロセス(1dyno)と「PostgreSQL」のDB容量5MBまで無料らしい。

ソース管理とデプロイは分散型バージョン管理システムの「Git」を使用するみたい。

最近は何でもクラウドですなぁー。

自宅サーバなど不要な時代なのですかねぇー。

…とりあえずやってみた。

今回の環境は以下です。

  • Windows 7 Professional SP1(32bit)
  • Ruby2.0.0-p0
  • gem2.0.3
  • Rails3.2.13
  • Heroku Toolbelt2.37.2 (i386-mingw32)
  • Git1.8.1.msysgit.1

スポンサード リンク

Herokuのアカウント登録

Herokuサイトへアクセスし、「Sign Up」よりメールアドレスを入力し、アカウント登録を行う。

Heroku Toolbeltのインストール

Heroku Toolbeltサイトへアクセスし、「Heroku Toolbelt」のWindows版をダウンロードし、インストール。

しかし、Heroku Toolbeltと同時にRuby、Gitも一緒にインストールされてしまう。

「Ruby1.9.3-p392」が…。

なので、インストールされたRubyはアンインストールし、以下のファイルのRubyのパスが設定されている箇所を、インストールされているRubyのパスに編集する。

「C:\Program Files\Heroku\bin\heroku.bat」の6行目

「C:\Program Files\Heroku\bin\heroku」の3行目

環境変数Pathの設定

環境変数PathにRuby、Heroku、Gitのパスが設定されていることを確認する(設定されていない場合は設定する)。

今回の場合は以下の4つ。

Herokuのコマンドでログイン

Heroku Toolbeltをインストールし、Pathを通したことで「heroku」コマンドが使用できるようになる。

以下のコマンドでログインを行う。

ローカルにSSH公開鍵がない場合は、生成するかどうかを確認される。

もし、「ssh-keygen.exeは動作を停止しました」とかのエラーが出た場合は、ウイルス対策ソフトが邪魔をしている可能性がある。

俺の場合、ウイルスセキュリティZEROの「ウイルス・スパイウェア対策」を全て無効にしたら無事に生成できた。

なお、SSH鍵の生成場所は「C:/Users/ユーザ名/.ssh」で、公開鍵がサーバに送信され、公開鍵暗号方式で認証が可能になる。

アプリケーションの準備

今回はお試しということで、オープンソースのものを使用し、Herokuに乗っけてみる。

Ruby製のCMS「Lokka」というもの。

GitHubで公開されているので、そちらからクローン(Clone)する。

コマンドは以下のどちらでも構わない。

もし、「ssh.exeは動作を停止しました」とかのエラーが出た場合は、上記と同様にウイルス対策ソフトを無効にしてみるといい。

Herokuコマンドでアプリケーション作成

続いて、Heroku上のアプリケーションの作成を行う。

クローン(Clone)してきたフォルダへ移動し、以下のコマンドで行う。

Gitのpushコマンドでデプロイ

ローカル環境とHerokuクラウド環境の準備が整ったので、ローカル環境から本番環境のHerokuクラウド環境にアプリケーションをデプロイする。

コマンドは以下。

ここでも、「ssh.exeは動作を停止しました」とかのエラーが出た場合は、上記と同様にウイルス対策ソフトを無効にする。

続いて、Lokkaのフォルダ直下にある「README.md」ファイルに記載されている通り、いくつかコマンドを叩いてく。

1つ目のコマンドでデータベースURL「HEROKU_POSTGRESQL_BLACK_URL」が設定されたので、2つ目のコマンドでそれを指定してやる。

これをしないと、3つ目のコマンドで以下のようなエラーになるので注意。

最後のコマンドでブラウザが開く。

やっとできたー!!

そのうち消すかもしれませんが、今のところ公開中です。

Lokka画面

Lokka(公開中)

Test Site

参考サイト

Heroku(ヘロク)で,Ruby on Railsアプリを簡単に公開する方法の入門 (無料のRuby向けPaaS環境の使い方) – 主に言語とシステム開発に関して

herokuでgit pushした時のエラーの対処

rubyでCMS構築したい ~lokka~ | Chie a la Mode

 - Git, Heroku, Ruby on Rails