41

start Heroku

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: start Heroku
Page 2: start Heroku

おさらい…

Page 3: start Heroku

発音は「 her-OH-koo 」 二文字目にアクセントを置いて、「ヘロク」もしくは「ハオク」と発音しま

す。

“Heroku” ってどう読むの?

Page 4: start Heroku

Hero( ヒーロー ) + haiku (俳句)の造語 「 Ruby の開発者をヒーローにする」というコンセプトのもとに命名

“Heroku” ってどういう意味?

Page 5: start Heroku

Web アプリケーションのホスティングサービス 最近流行の PaaS ( Platform as a Service )

どんなサービス?

※ 参考 URL   http://ja.wikipedia.org/wiki/PaaS

Page 6: start Heroku

ここがすごい

Page 7: start Heroku

コーディング

Heroku に展開

アイデアの実現

   公開までの手間がいらないHerrokの提唱

     ⇓

インターネットに公開

Page 8: start Heroku

コーディング

サーバの購入、構築、設定

デプロイ作業

アイデアの実現

✗✗

git push heroku

運用

拡張

Page 9: start Heroku

スピードと柔軟性まとめ

Herokuの

強み

スピード

スケーラ

ビリティ

豊富な機能

add-ons

Git によるデプロイ

Page 10: start Heroku

アプリケーションを公開する

Page 11: start Heroku

アプリケーション公開までの手順

ローカルでアプリの

作成 / 変更

git で Heroku のリポジトリに push

公開

Page 12: start Heroku

必要なもの

Ruby

rvm( 使ったほうが便利 )

Git

Heroku アカウント

Heroku で公開するアプリケーション

( 今回は Ruby アプリケーション )

★ 必須

Page 13: start Heroku

heroku gem のインストール$ gem install bundler

$ bundle init

$ vim Gemfile

source http://rubygems.org

gem ‘heroku’

gem ‘sinatra’

  …その他必要な gem

$ bundler install –path /vendor/bundle

$ vim .gitignore

vendor/bundle

←Gemfile に使用する gems を記述

bundler で Gemfile の gems をアプリケーション以下の /vendor/bundle にインストール↓

←heroku の容量がもったいないので  gems は heroku のリポジトリに push しない

Page 14: start Heroku

省略…

アプリケーションの作成

Page 15: start Heroku

Heroku にアプリケーションを作成する

$ heroku create アプリ名

または

$ heroku create

$ heroku rename 新しいアプリ名

アプリケーション名を変更をする

Page 16: start Heroku

Heroku にマスターブランチを作成する

DB を使用する場合、 Heroku の DB にマイグレーションを行う

デプロイ ( 初回 )

$ git push heroku master

$ heroku db:migrate

$ heroku db:push <db url>

Page 17: start Heroku

Heroku に変更を反映させる

デプロイ ( 変更を反映 )

$ git push heroku

Page 18: start Heroku

ブラウザ起動

$ bundle exec heroku open

Page 19: start Heroku

標準(無料)の範囲

App 1 アカウントにつきいくつ作成できるのか不明

容量 100MB まで (git 、 gem 関連以外 )10MB 以下を推奨

プロセス 1dyno

リクエスト

1dyno(1 プロセス ) につき 10-50 リクエスト ( 秒 )

メモリ 1dyno につき最大 300MB までDB PostgreSQL   5MBRuby 1.9.2

ログ 1500 行までAdd-ons 最低グレードは無料 ( 使用するには登録が必要 )

Page 20: start Heroku

便利な機能

Page 21: start Heroku

環境変数を設定する

stack コマンドで切り替える

環境変数を参照する

設定した環境変数一覧を見る

環境変数

$ bundle exec heroku config:add PASSWORD=“password”

ENV[‘PASSWORD’]

bundle exec heroku config

Page 22: start Heroku

メンテナンスモードにする

stack コマンドで切り替える

環境変数を参照する

メンテナンスモードを解除する

メンテナンスモード

$ bundle exec heroku maintenance:on

$ bundle exec heroku maintenance:off

Page 23: start Heroku

環境変数を参照する

メンテナンスモードを解除する

ログ

$ bundle exec heroku logs

$ bundle exec heroku logs –n 200

$ bundle exec heroku logs --tail

Page 24: start Heroku

プロジェクトにメンバーを追加する

環境変数を参照する

課金アカウントを変更する

チーム開発

$ bundle exec heroku sharing:add [email protected]

$ bundle exec heroku sharing:transfer [email protected]

Page 25: start Heroku

add-ons

Page 26: start Heroku

アドオンを使用する

$ bundle exec heroku addons:add アドオン名 : グレード名

Page 27: start Heroku

便利なアドオン

Page 28: start Heroku

cron

$ bundle exec heroku addons:add cron:daily

Page 29: start Heroku

https アクセス

$ bundle exec heroku addons:add ssl:piggyback

Page 30: start Heroku

カスタムドメイン

$ bundle exec heroku addons:add custom_domains

$ bundle exec heroku domains:add xxx.xxx.com

Page 31: start Heroku

DB バックアップ (heroku サーバー上 )

$ bundle exec heroku addons:add pgbackups

$ bundle exec heroku pgbackup:capture

$ bundle exec heroku pgbackups

$ bundle exec pgbackups:restore バックアップファイル名

Page 32: start Heroku

plugins

Page 33: start Heroku

プラグインを使用する

$ bundle exec heroku plugins:install git リポジトリのパス

Page 34: start Heroku

プラグインのカタログ

Page 35: start Heroku

Herocutter

http://herocutter.heroku.com/

プラグインのカタログを利用する

Page 36: start Heroku

Herocutter プラグイン

$ bundle exec heroku plugins:install git://github.com/hone/heroku_herocutter.git

$ bundle exec heroku plugins:install git://github.com/hone/heroku_colorize_console.git

$ bundle exec heroku plugins:install colorize_console

インストールが簡単になる

Page 37: start Heroku

Hero は Ruby 開発者だけじゃない ..

Page 38: start Heroku

Ruby( デフォルト )

Node.JS

Clojure ( Lisp )

Java

Python

Scala

対応環境

Page 39: start Heroku

Stack 一覧を確認する

stack

aspen-mri-1.8.6

bamboo-ree-1.8.7

* bamboo-mri-1.9.2

cedar (beta)

Ruby

その他

デフォルト →

Page 40: start Heroku

アプリケーション作成時にオプションを指定する

stack コマンドで切り替える

Push した時に切り替わる

動作環境を切り替える

$ bundle exec heroku create アプリ名 – stack cedar

$ bundle exec heroku stack:migrate ceder

$ git push heroku