SlideShare une entreprise Scribd logo
1  sur  22
Télécharger pour lire hors ligne
Heroku に
         ChiliProject を
               入れてみた
                               倉澤 望 (鍋太郎)
Heroku に ChiliProject を入れてみた
                                  @nabetaro
                                       Powered by Rabbit 1.0.4
自己紹介
      ✓ プログラマー
      ✓ Debian JP
      ✓ 長野ソフトウェアエンジニアグ
        ループ (NSEG)
      ✓ twitter: @nabetaro
                                                   1/21
Heroku に ChiliProject を入れてみた          Powered by Rabbit 1.0.4
自己紹介
      ✓ Debian JP で文書翻訳
            ✓ インストールマニュアル
            ✓ po4a, apt, etc

      ✓ Subversion関係の翻訳
            ✓ TortoiseSVN のヘルプ(休止)
            ✓ svnbook(再開?)
                                                   2/21
Heroku に ChiliProject を入れてみた          Powered by Rabbit 1.0.4
はじめにお詫び
      ✓ 実際のところHerokuの超初心
        者です
      ✓ 読み方もよくわかっていませ
        ん。
      ✓ 間違っているところは教えてく
        ださい
                                                3/21
Heroku に ChiliProject を入れてみた       Powered by Rabbit 1.0.4
Herokuとは
      ✓ PaaS (Platform as a
        Service)
      ✓ Salesforce.com 傘下
      ✓ Ruby, Java, PHP, Scala,
        Clojure, Python
      ✓ 最低プランは無料
                                                       4/21
Heroku に ChiliProject を入れてみた              Powered by Rabbit 1.0.4
ChiliProjectとは

      ✓ Redmineからforkしたプロ
        ジェクト
      ✓ ってぐらいしか知らない
      ✓ 知らないから入れてみた

                                             5/21
Heroku に ChiliProject を入れてみた    Powered by Rabbit 1.0.4
やったこと
      ✓ http://
        devcenter.heroku.com/
        articles/quickstart
      ✓ http://
        www.hippiehacker.org/201
        1/03/redmine-up-and-
        running-in-minutes-on.html
                                                    6/21
Heroku に ChiliProject を入れてみた           Powered by Rabbit 1.0.4
必要なもの
      ✓ Ruby 1.9.2 推奨
            ✓ $ rvm install 1.9.2 && rvm use
              1.9.2 --default

      ✓ git
      ✓ herokuのアカウントとheroku
        のgem
            ✓ $ rvmsudo gem install heroku           7/21
Heroku に ChiliProject を入れてみた            Powered by Rabbit 1.0.4
プロジェクトを作って
    ChiliProjectを取ってくる
            $ mkdir nsegproject
            $ cd nsegproject/
            $ git init
            Initialized empty Git repository in /home/nabetaro/project/nseg/nsegproject/.git/
            $ git remote add chiliproject https://github.com/chiliproject/chiliproject.git
            $ git fetch chiliproject
            remote: Counting objects: 56488, done.
            remote: Compressing objects: 100% (12737/12737), done.
            remote: Total 56488 (delta 43290), reused 55587 (delta 42544)
            Receiving objects: 100% (56488/56488), 17.20 MiB | 1.06 MiB/s, done.
            Resolving deltas: 100% (43290/43290), done.
            From https://github.com/chiliproject/chiliproject
             * [new branch]      master     -> chiliproject/master
             ……
            $ git merge chiliproject/master
            $ git add .
            $ git commit -m 'clean version of base code'
            # On branch master
            nothing to commit (working directory clean)

                                                                                                 8/21
Heroku に ChiliProject を入れてみた                                                        Powered by Rabbit 1.0.4
Gemfileを編集

    ✓ source :rubygems のブロック
      に以下を追加してcommit

           gem 'giternal'
           gem 'heroku'

           $ git add Gemfile
           $ git commit -m 'Added Gemfile for heroku, and giternal'
           [master fc243d9] Added Gemfile for heroku, and giternal
            1 files changed, 3 insertions(+), 0 deletions(-)


                                                                          9/21
Heroku に ChiliProject を入れてみた                                 Powered by Rabbit 1.0.4
ライブラリのインストール
              $ gem install bundler
              $ bundle install

    ✓ libmysqlclient-dev
    ✓ libpq-dev
    ✓ libmagickcore-dev
    ✓ libmagickwand-dev
Heroku に ChiliProject を入れてみた
                                            10/21
                                 Powered by Rabbit 1.0.4
herokuにプロジェクトを追
           加

           $ heroku create nsegproject
           Enter your Heroku credentials.
           Email: nabetaro@caldron.jp
           Password:
           Found existing public key: /home/nabetaro/.ssh/id_rsa.pub
           Uploading ssh public key /home/nabetaro/.ssh/id_rsa.pub
           Creating nsegproject... done, stack is bamboo-mri-1.9.2
           http://nsegproject.heroku.com/ | git@heroku.com:nsegproject.git
           Git remote heroku added




                                                                              11/21
Heroku に ChiliProject を入れてみた                                       Powered by Rabbit 1.0.4
SESSION_SECRET追加


           $ heroku config:add SESSION_SECRET=`ruby -e 'require "rubygems" ;
             require "active_support" ;
             puts ActiveSupport::SecureRandom.hex(40)'`
           Adding config vars and restarting app... done
             SESSION_SECRET => d9a22eb2d2e6ed02...8226912d82cab7d5




                                                                                 12/21
Heroku に ChiliProject を入れてみた                                          Powered by Rabbit 1.0.4
config/initializers/
     session_store.rbを編集


         ActionController::Base.session = {
           :session_key => '_redmine_session',
           :secret => ENV['SESSION_SECRET']
         }


                                                    13/21
Heroku に ChiliProject を入れてみた             Powered by Rabbit 1.0.4
config/initializers/
     session_store.rbを追加


            $ git add -f config/initializers/session_store.rb
            $ git commit -m 'Added session key and secret to be populated via env variables'
            [master 041a493] Added session key and secret to be populated via env variables
             1 files changed, 4 insertions(+), 0 deletions(-)
             create mode 100644 config/initializers/session_store.rb




                                                                                               14/21
Heroku に ChiliProject を入れてみた                                                        Powered by Rabbit 1.0.4
外部連携は省略


      ✓ メール送信
      ✓ Amazon S3


                                              15/21
Heroku に ChiliProject を入れてみた       Powered by Rabbit 1.0.4
プラグイン置き場追加

      ✓ heroku で使用するため空ディ
        レクトリが必要
      ✓ gitは空ディレクトリを管理で
        きないので……
      ✓ README を作っておく
                                          16/21
Heroku に ChiliProject を入れてみた   Powered by Rabbit 1.0.4
プラグイン置き場追加


           $ mkdir public/plugin_assets
           $ echo this must exist > public/plugin_assets/README
           $ git add -f public/plugin_assets/README
           $ git commit -m 'Added plugin_asset dir for Heroku'
           [master 1fc2514] Added plugin_asset dir for Heroku
            1 files changed, 1 insertions(+), 0 deletions(-)
            create mode 100644 public/plugin_assets/README




                                                                    17/21
Heroku に ChiliProject を入れてみた                             Powered by Rabbit 1.0.4
Herokuにpushして
                  migrate


          $   git push heroku master
          $   heroku rake db:migrate
          $   heroku rake redmine:load_default_data REDMINE_LANG=ja
          $   heroku open




                                                                       18/21
Heroku に ChiliProject を入れてみた                                Powered by Rabbit 1.0.4
お、できたできた




                                           19/21
Heroku に ChiliProject を入れてみた    Powered by Rabbit 1.0.4
しばらくいじってみよう


      ✓ http://
        nsegproject.heroku.com/


                                          20/21
Heroku に ChiliProject を入れてみた   Powered by Rabbit 1.0.4
感想
      ✓ 想像以上に手軽
      ✓ heroku の各サブコマンドを調
        べよう
      ✓ その前に rack アプリをもっと
        勉強するべき
            ✓ 今回の中でも、やっただけで使って
              ないとか……         21/21
Heroku に ChiliProject を入れてみた        Powered by Rabbit 1.0.4

Contenu connexe

Tendances

ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefnpsg
 
BOSHで始めるImmutable Infrastructure
BOSHで始めるImmutable InfrastructureBOSHで始めるImmutable Infrastructure
BOSHで始めるImmutable Infrastructurei_yudai
 
BOSH-lite で 1VM Cloud Foundry
BOSH-lite で 1VM Cloud FoundryBOSH-lite で 1VM Cloud Foundry
BOSH-lite で 1VM Cloud Foundryi_yudai
 
Hatoholのログ監視機能 2014/10版
Hatoholのログ監視機能 2014/10版Hatoholのログ監視機能 2014/10版
Hatoholのログ監視機能 2014/10版Kouhei Sutou
 
Alpine linuxを触ってみよう
Alpine linuxを触ってみようAlpine linuxを触ってみよう
Alpine linuxを触ってみようRyo Adachi
 
【PHPカンファレンス福岡】PHP 5.3 + CakePHP 1.3 → PHP 7 + CakePHP 3 移行を決めた話
【PHPカンファレンス福岡】PHP 5.3 + CakePHP 1.3 → PHP 7 + CakePHP 3 移行を決めた話【PHPカンファレンス福岡】PHP 5.3 + CakePHP 1.3 → PHP 7 + CakePHP 3 移行を決めた話
【PHPカンファレンス福岡】PHP 5.3 + CakePHP 1.3 → PHP 7 + CakePHP 3 移行を決めた話Yuki Kanazawa
 
DevStackで始めるCloud FoundryとBOSH
DevStackで始めるCloud FoundryとBOSHDevStackで始めるCloud FoundryとBOSH
DevStackで始めるCloud FoundryとBOSHi_yudai
 
Rubyを使った分散全文検索ミドルウェア
Rubyを使った分散全文検索ミドルウェアRubyを使った分散全文検索ミドルウェア
Rubyを使った分散全文検索ミドルウェアKouhei Sutou
 
Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!Daisuke Hiraoka
 
【dots. IT勉強会】開発環境のDocker化
【dots. IT勉強会】開発環境のDocker化【dots. IT勉強会】開発環境のDocker化
【dots. IT勉強会】開発環境のDocker化Yuki Kanazawa
 
~Dockerfileの開発を劇的に楽にする~ Dockerfile開発環境 EDGE
~Dockerfileの開発を劇的に楽にする~ Dockerfile開発環境 EDGE~Dockerfileの開発を劇的に楽にする~ Dockerfile開発環境 EDGE
~Dockerfileの開発を劇的に楽にする~ Dockerfile開発環境 EDGE辰徳 斎藤
 
Dockerを使ってみよう
Dockerを使ってみようDockerを使ってみよう
Dockerを使ってみようRyo Adachi
 
Weaveを試してみた
Weaveを試してみたWeaveを試してみた
Weaveを試してみたKazuto Kusama
 
Cloud Foundry Admin UI v2を使ってみた
Cloud Foundry Admin UI v2を使ってみたCloud Foundry Admin UI v2を使ってみた
Cloud Foundry Admin UI v2を使ってみたi_yudai
 
Composer による依存管理 と Packagist によるライブラリの公開
Composer による依存管理 と Packagist によるライブラリの公開Composer による依存管理 と Packagist によるライブラリの公開
Composer による依存管理 と Packagist によるライブラリの公開Shogo Kawahara
 
はじめてのDockerパーフェクトガイド(2017年版)
はじめてのDockerパーフェクトガイド(2017年版)はじめてのDockerパーフェクトガイド(2017年版)
はじめてのDockerパーフェクトガイド(2017年版)Hiroshi Hayakawa
 

Tendances (20)

ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
 
BOSHで始めるImmutable Infrastructure
BOSHで始めるImmutable InfrastructureBOSHで始めるImmutable Infrastructure
BOSHで始めるImmutable Infrastructure
 
NDS#31
NDS#31NDS#31
NDS#31
 
BOSH-lite で 1VM Cloud Foundry
BOSH-lite で 1VM Cloud FoundryBOSH-lite で 1VM Cloud Foundry
BOSH-lite で 1VM Cloud Foundry
 
Hatoholのログ監視機能 2014/10版
Hatoholのログ監視機能 2014/10版Hatoholのログ監視機能 2014/10版
Hatoholのログ監視機能 2014/10版
 
Alpine linuxを触ってみよう
Alpine linuxを触ってみようAlpine linuxを触ってみよう
Alpine linuxを触ってみよう
 
Niigata.pm #1
Niigata.pm #1Niigata.pm #1
Niigata.pm #1
 
【PHPカンファレンス福岡】PHP 5.3 + CakePHP 1.3 → PHP 7 + CakePHP 3 移行を決めた話
【PHPカンファレンス福岡】PHP 5.3 + CakePHP 1.3 → PHP 7 + CakePHP 3 移行を決めた話【PHPカンファレンス福岡】PHP 5.3 + CakePHP 1.3 → PHP 7 + CakePHP 3 移行を決めた話
【PHPカンファレンス福岡】PHP 5.3 + CakePHP 1.3 → PHP 7 + CakePHP 3 移行を決めた話
 
DevStackで始めるCloud FoundryとBOSH
DevStackで始めるCloud FoundryとBOSHDevStackで始めるCloud FoundryとBOSH
DevStackで始めるCloud FoundryとBOSH
 
Rubyを使った分散全文検索ミドルウェア
Rubyを使った分散全文検索ミドルウェアRubyを使った分散全文検索ミドルウェア
Rubyを使った分散全文検索ミドルウェア
 
Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!
 
Reading NATS
Reading NATSReading NATS
Reading NATS
 
【dots. IT勉強会】開発環境のDocker化
【dots. IT勉強会】開発環境のDocker化【dots. IT勉強会】開発環境のDocker化
【dots. IT勉強会】開発環境のDocker化
 
~Dockerfileの開発を劇的に楽にする~ Dockerfile開発環境 EDGE
~Dockerfileの開発を劇的に楽にする~ Dockerfile開発環境 EDGE~Dockerfileの開発を劇的に楽にする~ Dockerfile開発環境 EDGE
~Dockerfileの開発を劇的に楽にする~ Dockerfile開発環境 EDGE
 
Dockerを使ってみよう
Dockerを使ってみようDockerを使ってみよう
Dockerを使ってみよう
 
Weaveを試してみた
Weaveを試してみたWeaveを試してみた
Weaveを試してみた
 
Cloud Foundry Admin UI v2を使ってみた
Cloud Foundry Admin UI v2を使ってみたCloud Foundry Admin UI v2を使ってみた
Cloud Foundry Admin UI v2を使ってみた
 
Fab
FabFab
Fab
 
Composer による依存管理 と Packagist によるライブラリの公開
Composer による依存管理 と Packagist によるライブラリの公開Composer による依存管理 と Packagist によるライブラリの公開
Composer による依存管理 と Packagist によるライブラリの公開
 
はじめてのDockerパーフェクトガイド(2017年版)
はじめてのDockerパーフェクトガイド(2017年版)はじめてのDockerパーフェクトガイド(2017年版)
はじめてのDockerパーフェクトガイド(2017年版)
 

Similaire à Heroku に ChiliProject を入れてみた

debexpo(mentors.d.n)をハックするには
debexpo(mentors.d.n)をハックするにはdebexpo(mentors.d.n)をハックするには
debexpo(mentors.d.n)をハックするにはkenhys
 
Debianのインフラを借りるには
Debianのインフラを借りるにはDebianのインフラを借りるには
Debianのインフラを借りるにはkenhys
 
behatエクステンションの作り方
behatエクステンションの作り方behatエクステンションの作り方
behatエクステンションの作り方Ryo Tomidokoro
 
Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料Nobuhiro Iwamatsu
 
静的サイトどこにする?
静的サイトどこにする?静的サイトどこにする?
静的サイトどこにする?ogawatti
 
Dockerハンズオン
DockerハンズオンDockerハンズオン
Dockerハンズオン啓介 大橋
 
使えるDjango1.4
使えるDjango1.4使えるDjango1.4
使えるDjango1.4hirokiky
 
Rails初心者レッスン lesson5 2edition
Rails初心者レッスン lesson5 2editionRails初心者レッスン lesson5 2edition
Rails初心者レッスン lesson5 2editionSatomi Tsujita
 
ブラウザだけで学ぶWebアプリ開発
ブラウザだけで学ぶWebアプリ開発 ブラウザだけで学ぶWebアプリ開発
ブラウザだけで学ぶWebアプリ開発 schoowebcampus
 
GitLab + Dokku で作る CI/CD 環境
GitLab + Dokku で作る CI/CD 環境GitLab + Dokku で作る CI/CD 環境
GitLab + Dokku で作る CI/CD 環境Kazuhiro Nishiyama
 
Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Mori Shingo
 
VagrantユーザのためのDocker入門
VagrantユーザのためのDocker入門VagrantユーザのためのDocker入門
VagrantユーザのためのDocker入門Masashi Shinbara
 
Docker PaaSとしての OpenShift, Deis, Flynn比較
Docker PaaSとしての OpenShift, Deis, Flynn比較Docker PaaSとしての OpenShift, Deis, Flynn比較
Docker PaaSとしての OpenShift, Deis, Flynn比較Kazuto Kusama
 
ビルドサーバで使うDocker
ビルドサーバで使うDockerビルドサーバで使うDocker
ビルドサーバで使うDockerMasashi Shinbara
 
20150101勉強会 dokku alt
20150101勉強会 dokku alt20150101勉強会 dokku alt
20150101勉強会 dokku altShugo Numano
 
いまさら聞けないRake入門
いまさら聞けないRake入門いまさら聞けないRake入門
いまさら聞けないRake入門Tomoya Kawanishi
 

Similaire à Heroku に ChiliProject を入れてみた (20)

start Heroku
start Herokustart Heroku
start Heroku
 
debexpo(mentors.d.n)をハックするには
debexpo(mentors.d.n)をハックするにはdebexpo(mentors.d.n)をハックするには
debexpo(mentors.d.n)をハックするには
 
Debianのインフラを借りるには
Debianのインフラを借りるにはDebianのインフラを借りるには
Debianのインフラを借りるには
 
behatエクステンションの作り方
behatエクステンションの作り方behatエクステンションの作り方
behatエクステンションの作り方
 
Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料Yocto Project ハンズオン プレゼン用資料
Yocto Project ハンズオン プレゼン用資料
 
静的サイトどこにする?
静的サイトどこにする?静的サイトどこにする?
静的サイトどこにする?
 
Dockerハンズオン
DockerハンズオンDockerハンズオン
Dockerハンズオン
 
使えるDjango1.4
使えるDjango1.4使えるDjango1.4
使えるDjango1.4
 
Rails初心者レッスン lesson5 2edition
Rails初心者レッスン lesson5 2editionRails初心者レッスン lesson5 2edition
Rails初心者レッスン lesson5 2edition
 
ブラウザだけで学ぶWebアプリ開発
ブラウザだけで学ぶWebアプリ開発 ブラウザだけで学ぶWebアプリ開発
ブラウザだけで学ぶWebアプリ開発
 
GitLab + Dokku で作る CI/CD 環境
GitLab + Dokku で作る CI/CD 環境GitLab + Dokku で作る CI/CD 環境
GitLab + Dokku で作る CI/CD 環境
 
Yesod on Heroku
Yesod on HerokuYesod on Heroku
Yesod on Heroku
 
Sinatra and heroku for mac
Sinatra and heroku for macSinatra and heroku for mac
Sinatra and heroku for mac
 
Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋Node予備校 vol.1 名古屋
Node予備校 vol.1 名古屋
 
VagrantユーザのためのDocker入門
VagrantユーザのためのDocker入門VagrantユーザのためのDocker入門
VagrantユーザのためのDocker入門
 
Docker PaaSとしての OpenShift, Deis, Flynn比較
Docker PaaSとしての OpenShift, Deis, Flynn比較Docker PaaSとしての OpenShift, Deis, Flynn比較
Docker PaaSとしての OpenShift, Deis, Flynn比較
 
ビルドサーバで使うDocker
ビルドサーバで使うDockerビルドサーバで使うDocker
ビルドサーバで使うDocker
 
How to run P4 BMv2
How to run P4 BMv2How to run P4 BMv2
How to run P4 BMv2
 
20150101勉強会 dokku alt
20150101勉強会 dokku alt20150101勉強会 dokku alt
20150101勉強会 dokku alt
 
いまさら聞けないRake入門
いまさら聞けないRake入門いまさら聞けないRake入門
いまさら聞けないRake入門
 

Plus de Nozomu KURASAWA

プルリク送ったらライブラリ壊したった
 プルリク送ったらライブラリ壊したった プルリク送ったらライブラリ壊したった
プルリク送ったらライブラリ壊したったNozomu KURASAWA
 
LINEのbotを作ってみた
LINEのbotを作ってみたLINEのbotを作ってみた
LINEのbotを作ってみたNozomu KURASAWA
 
電話番号の扱い方の提案(仮)
電話番号の扱い方の提案(仮)電話番号の扱い方の提案(仮)
電話番号の扱い方の提案(仮)Nozomu KURASAWA
 
Windowsを踏台にしてSSH接続
Windowsを踏台にしてSSH接続Windowsを踏台にしてSSH接続
Windowsを踏台にしてSSH接続Nozomu KURASAWA
 
OpenLayersで地図表示
OpenLayersで地図表示OpenLayersで地図表示
OpenLayersで地図表示Nozomu KURASAWA
 
Debian パッケージングチュートリアル
Debian パッケージングチュートリアルDebian パッケージングチュートリアル
Debian パッケージングチュートリアルNozomu KURASAWA
 
PGP/GPG キーサインパーティ 接触編
PGP/GPG キーサインパーティ 接触編PGP/GPG キーサインパーティ 接触編
PGP/GPG キーサインパーティ 接触編Nozomu KURASAWA
 
真・HTML help文字化け対策
真・HTML help文字化け対策真・HTML help文字化け対策
真・HTML help文字化け対策Nozomu KURASAWA
 

Plus de Nozomu KURASAWA (12)

ActiveStorage::Analyzer
ActiveStorage::AnalyzerActiveStorage::Analyzer
ActiveStorage::Analyzer
 
プルリク送ったらライブラリ壊したった
 プルリク送ったらライブラリ壊したった プルリク送ったらライブラリ壊したった
プルリク送ったらライブラリ壊したった
 
LINEのbotを作ってみた
LINEのbotを作ってみたLINEのbotを作ってみた
LINEのbotを作ってみた
 
電話番号の扱い方の提案(仮)
電話番号の扱い方の提案(仮)電話番号の扱い方の提案(仮)
電話番号の扱い方の提案(仮)
 
Windowsを踏台にしてSSH接続
Windowsを踏台にしてSSH接続Windowsを踏台にしてSSH接続
Windowsを踏台にしてSSH接続
 
OpenLayersで地図表示
OpenLayersで地図表示OpenLayersで地図表示
OpenLayersで地図表示
 
Debian パッケージングチュートリアル
Debian パッケージングチュートリアルDebian パッケージングチュートリアル
Debian パッケージングチュートリアル
 
PGP/GPG キーサインパーティ 接触編
PGP/GPG キーサインパーティ 接触編PGP/GPG キーサインパーティ 接触編
PGP/GPG キーサインパーティ 接触編
 
OSMを楽しむ2012
OSMを楽しむ2012OSMを楽しむ2012
OSMを楽しむ2012
 
真・HTML help文字化け対策
真・HTML help文字化け対策真・HTML help文字化け対策
真・HTML help文字化け対策
 
おきらく翻訳
おきらく翻訳おきらく翻訳
おきらく翻訳
 
OpenStreetMapの紹介
OpenStreetMapの紹介OpenStreetMapの紹介
OpenStreetMapの紹介
 

Heroku に ChiliProject を入れてみた

  • 1. Heroku に ChiliProject を 入れてみた 倉澤 望 (鍋太郎) Heroku に ChiliProject を入れてみた @nabetaro Powered by Rabbit 1.0.4
  • 2. 自己紹介 ✓ プログラマー ✓ Debian JP ✓ 長野ソフトウェアエンジニアグ ループ (NSEG) ✓ twitter: @nabetaro 1/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 3. 自己紹介 ✓ Debian JP で文書翻訳 ✓ インストールマニュアル ✓ po4a, apt, etc ✓ Subversion関係の翻訳 ✓ TortoiseSVN のヘルプ(休止) ✓ svnbook(再開?) 2/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 4. はじめにお詫び ✓ 実際のところHerokuの超初心 者です ✓ 読み方もよくわかっていませ ん。 ✓ 間違っているところは教えてく ださい 3/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 5. Herokuとは ✓ PaaS (Platform as a Service) ✓ Salesforce.com 傘下 ✓ Ruby, Java, PHP, Scala, Clojure, Python ✓ 最低プランは無料 4/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 6. ChiliProjectとは ✓ Redmineからforkしたプロ ジェクト ✓ ってぐらいしか知らない ✓ 知らないから入れてみた 5/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 7. やったこと ✓ http:// devcenter.heroku.com/ articles/quickstart ✓ http:// www.hippiehacker.org/201 1/03/redmine-up-and- running-in-minutes-on.html 6/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 8. 必要なもの ✓ Ruby 1.9.2 推奨 ✓ $ rvm install 1.9.2 && rvm use 1.9.2 --default ✓ git ✓ herokuのアカウントとheroku のgem ✓ $ rvmsudo gem install heroku 7/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 9. プロジェクトを作って ChiliProjectを取ってくる $ mkdir nsegproject $ cd nsegproject/ $ git init Initialized empty Git repository in /home/nabetaro/project/nseg/nsegproject/.git/ $ git remote add chiliproject https://github.com/chiliproject/chiliproject.git $ git fetch chiliproject remote: Counting objects: 56488, done. remote: Compressing objects: 100% (12737/12737), done. remote: Total 56488 (delta 43290), reused 55587 (delta 42544) Receiving objects: 100% (56488/56488), 17.20 MiB | 1.06 MiB/s, done. Resolving deltas: 100% (43290/43290), done. From https://github.com/chiliproject/chiliproject * [new branch] master -> chiliproject/master …… $ git merge chiliproject/master $ git add . $ git commit -m 'clean version of base code' # On branch master nothing to commit (working directory clean) 8/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 10. Gemfileを編集 ✓ source :rubygems のブロック に以下を追加してcommit gem 'giternal' gem 'heroku' $ git add Gemfile $ git commit -m 'Added Gemfile for heroku, and giternal' [master fc243d9] Added Gemfile for heroku, and giternal 1 files changed, 3 insertions(+), 0 deletions(-) 9/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 11. ライブラリのインストール $ gem install bundler $ bundle install ✓ libmysqlclient-dev ✓ libpq-dev ✓ libmagickcore-dev ✓ libmagickwand-dev Heroku に ChiliProject を入れてみた 10/21 Powered by Rabbit 1.0.4
  • 12. herokuにプロジェクトを追 加 $ heroku create nsegproject Enter your Heroku credentials. Email: nabetaro@caldron.jp Password: Found existing public key: /home/nabetaro/.ssh/id_rsa.pub Uploading ssh public key /home/nabetaro/.ssh/id_rsa.pub Creating nsegproject... done, stack is bamboo-mri-1.9.2 http://nsegproject.heroku.com/ | git@heroku.com:nsegproject.git Git remote heroku added 11/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 13. SESSION_SECRET追加 $ heroku config:add SESSION_SECRET=`ruby -e 'require "rubygems" ; require "active_support" ; puts ActiveSupport::SecureRandom.hex(40)'` Adding config vars and restarting app... done SESSION_SECRET => d9a22eb2d2e6ed02...8226912d82cab7d5 12/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 14. config/initializers/ session_store.rbを編集 ActionController::Base.session = { :session_key => '_redmine_session', :secret => ENV['SESSION_SECRET'] } 13/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 15. config/initializers/ session_store.rbを追加 $ git add -f config/initializers/session_store.rb $ git commit -m 'Added session key and secret to be populated via env variables' [master 041a493] Added session key and secret to be populated via env variables 1 files changed, 4 insertions(+), 0 deletions(-) create mode 100644 config/initializers/session_store.rb 14/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 16. 外部連携は省略 ✓ メール送信 ✓ Amazon S3 15/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 17. プラグイン置き場追加 ✓ heroku で使用するため空ディ レクトリが必要 ✓ gitは空ディレクトリを管理で きないので…… ✓ README を作っておく 16/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 18. プラグイン置き場追加 $ mkdir public/plugin_assets $ echo this must exist > public/plugin_assets/README $ git add -f public/plugin_assets/README $ git commit -m 'Added plugin_asset dir for Heroku' [master 1fc2514] Added plugin_asset dir for Heroku 1 files changed, 1 insertions(+), 0 deletions(-) create mode 100644 public/plugin_assets/README 17/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 19. Herokuにpushして migrate $ git push heroku master $ heroku rake db:migrate $ heroku rake redmine:load_default_data REDMINE_LANG=ja $ heroku open 18/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 20. お、できたできた 19/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 21. しばらくいじってみよう ✓ http:// nsegproject.heroku.com/ 20/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4
  • 22. 感想 ✓ 想像以上に手軽 ✓ heroku の各サブコマンドを調 べよう ✓ その前に rack アプリをもっと 勉強するべき ✓ 今回の中でも、やっただけで使って ないとか…… 21/21 Heroku に ChiliProject を入れてみた Powered by Rabbit 1.0.4