herokuの始め方

2019年3月25日

herokuとは

herokuの読み方は「へろく」です。Paas(Platform as a Servise)と呼ばれるサービスで、アプリケーションの実行プラットフォームを提供するクラウドサービスです。

思想としてはアプリ開発者が極力インフラを意識することなくアプリケーションを公開できるようにするものだそうです。AWSとも通ずるところがありますね。アプリケーションを公開する方法としてはレンタルサーバを借りて行うこともできるのですが、どうしてもインフラ知識が必要になるので、個人開発では学習コストがかかってしまいます。

その点herokuでは比較的簡単にアプリケーションを公開できるようです。

 

herokuへ登録する

それではherokuの登録方法を記載していきます。

herokuへ登録するには以下のURLへアクセスします。

https://jp.heroku.com/home

 

無料で新規登録をクリックします。

そうすると入力フォームがでてきますので、記入していきましょう。個人で使用するなら団体名は空欄で大丈夫です。その場合の役職は「趣味でのご利用」にしましょう。

主な開発言語は選択した言語のアプリしかherokuで使えなくなるとかではないので、何を入れても問題ないです。(ただのアンケートだと思います。)

 

「無料アカウント作成」を押下すると、登録したメールアドレスにメールが送信されてくるはずです。(送信されてこない場合は少し待つor迷惑メールに入っていないか確認しましょう)

メールアドレスが送信されてきたら記載されているリンクに飛びます。

パスワード設定画面に飛びますので、パスワードを設定しましょう。

ちなみに、ここのパスワードは英語と数字と記号がそれぞれ1文字以上必要なようです。記号を含めたパスワードは普段使っていないので、個人的には記号を含める系のパスワードは嫌いです…。

これで登録は終わりです。登録がステップが少ないHPってやっぱりいいですね。

TOP画面へ自動的に遷移します。これで使うための準備はばっちりです。

次はherokuを扱うためのツールをインストールします。

 

heroku toolbeltをインストールする

以下のURLにアクセスし、heroku用のコマンドラインツールである「heroku toolbelt」をダウンロードします。

https://devcenter.heroku.com/articles/heroku-cli#download-and-install

私のPCはwindowsなので、windows版をダウンロードしインストールします。

※インストールはデフォルトの設定で問題ないと思います。

 

インストールが完了したらターミナルで接続確認します。私は今回はgit bashを使用します。(cygwinを使用したらめちゃくちゃ動作が不安定でした…)

heroku login

こちらのコマンドを実行すると、まずはなんかキーを押せと言われます。(qを押すと中止できます)

キーを押すと、ブラウザが立ち上がるのでページに表示されているボタンを押せばログイン完了となるようです。

ログイン完了したらこのような表示がでるはずです。なぜかこのままの状態でコマンド入力できなかったので、Ctrl+Cを押して抜け出しました。(これが正常な動作なのかよく分かっていません…)

とりあえずherokuへ接続はできているみたいです。

 

herokuコマンドを少し使ってみる

herokuを少しだけ使ってみます。といっても、特にアプリを用意していないので、herokuコマンドの確認レベルですが…。

herokuアプリを追加する。

試しに、アプリを作成してみます。以下のコマンドを実行します。

heroku create

アプリ名は勝手にherokuがつけてしまうみたいです。今回はguarded-peak-41941という名前になりました。

ブラウザ上で見ても、しっかりアプリが追加されているのが分かります。

※あとで色々調べたらアプリ名はブラウザから変更可能でした。(コマンドでも可)

 

アプリを削除する。

今作ったアプリを削除します。以下のコマンドを実行します。

heroku apps:destroy --app guarded-peak-41941

これで完了みたいです。なぜかまたコマンド実行中のままですが…。

ブラウザ上で見てもアプリが無くなっているのが分かります。

 

最後に

今回はPaasであるherokuの登録と少し使い方を記載しました。(使い方がほとんどない…)

現状herokuをいじって感じることはherokuの設定・デプロイは独特で、herokuを扱うスキルは他では活かしにくい気がしていますね。とはいえ個人開発者にとっては有益なサービスなので、使用していきたいと思います。