SlideShare uma empresa Scribd logo
1 de 172
Real World Rails
Without tools he is nothing, with tools he is all. -Thomas Carlyle

2012/3/30 yoyogi.rb
自己紹介

フリーエンジニア

Rails歴4年くらい

twitter:@nysalor
blog: http://blog.larus.jp/
Real World?


周辺ツールやノウハウなど

開発編

運用編
開発編
Development
Mac
Mac
Mac
Mac



Rubyが最初から入っている
Mac



Rubyが最初から入っている
Mac



Rubyが最初から入っている
Mac



Rubyが最初から入っている

ような気がしていたが別にそんなことはなかったぜ!
Mac
Mac
Mac

   最初から入っているRubyは1.8.7(Lion)

> /usr/bin/ruby -v

ruby 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]

   結局は入れ直し(homebrew,rvmなど)

   Railsも入ってるけど2.3.3とかそのへん
Mac
Mac
Mac

それでもなお便利

Xcodeで開発環境は一発

UNIXコマンドが大抵使える

TimeMachine
rvm/rbenv
rvm/rbenv
RVM http://beginrescueend.com/
rvm/rbenv
RVM http://beginrescueend.com/

rbenv https://github.com/sstephenson/rbenv
rvm/rbenv
RVM http://beginrescueend.com/

rbenv https://github.com/sstephenson/rbenv

 複数バージョンのRubyを同居

 「前のバージョン用のgemを使ってしまった」を防ぐ

 開発・運用環境で同じRubyを使うメリット
rvm/rbenv
RVM http://beginrescueend.com/

rbenv https://github.com/sstephenson/rbenv
rvm/rbenv
RVM http://beginrescueend.com/

rbenv https://github.com/sstephenson/rbenv
rvm/rbenv
RVM http://beginrescueend.com/

rbenv https://github.com/sstephenson/rbenv

 RVMが主流→最近はrbenvが流行

 RVMは多機能だけど何度かやらかした

 rbenvは実行ファイルにやや癖がある
screen/tmux
screen/tmux
screen/tmux
screen/tmux
screen/tmux
ターミナルマルチプレクサ

irb,logなど複数のシェルを行き来するのに便利

落ちても再起動するまでセッションが消えない

設定がけっこう大変

Terminal/iTermのタブでいいんじゃない?
git
git

 分散リポジトリ

 学習コストが高い?

 svnに慣れすぎていなければ平気

 githubやherokuでどっちみち必要
sourcetree
sourcetree
http://www.sourcetreeapp.com/
sourcetree
http://www.sourcetreeapp.com/
sourcetree
http://www.sourcetreeapp.com/




                          見やすい
                          多機能(っぽいけどあまり使ってない)
                          登録必要だけど無料
gitx
gitx
       http://gitx.frim.nl/
gitx
       http://gitx.frim.nl/
gitx
       http://gitx.frim.nl/




                              軽い
                              機能少ない
                              diff見るだけなら十分
github
github
   http://github.com/
github
   http://github.com/
github
   http://github.com/




                        githubでいいんじゃね?
                        プライベートリポジトリは有料
                        ネットがないと使えない
やっぱりCUI
やっぱりCUI


GUIはdiff見たり検索するだけ

どっちみちCUIの操作は必要

苦手な人は覚えましょう
エディタ
エディタ
エディタ
エディタ
エディタ


Emacs
Vim
TextMate
Emacs
Emacs


Cocoa Emacs(自分でビルド)

inline-patch
full screen
Emacs
Emacs

ruby-mode
ruby-electric
rinari
etags
auto-complete
Emacs
Emacs
Emacs
Emacs
Emacs


設定をDropboxに置く

起動したらずっとそのまま

export EDITOR=emacsclient
Pow
Pow
      http://pow.cx/
Pow
      http://pow.cx/
Pow
      http://pow.cx/
Pow
      http://pow.cx/
Pow
      http://pow.cx/


いちいちrails serverしなくてもいい

http://xxxx.devでアクセスできる

複数プロジェクトの同時開発に対応
Pow
      http://pow.cx/
Pow
      http://pow.cx/
Pow
        http://pow.cx/


gem install powder
powder -rでサーバ再起動

powder applog,powder linkなど
guard
guard
https://github.com/guard/guard
guard
https://github.com/guard/guard

TDD
ファイルが更新されると自動実行

いちいちrspecを実行するとサボりがち

coffee scriptの開発などにも使える

autospecというのもある
spork
spork
https://github.com/sporkrb/spork
spork
https://github.com/sporkrb/spork



分散テスト

同時に複数のテストが実行される

データベースを初期化する仕組みが不可欠
capistrano
capistrano
 https://github.com/capistrano/capistrano
capistrano
 https://github.com/capistrano/capistrano



デプロイツール

サーバへのアップロードから再起動まで全て自動化

環境ごとにデプロイ先やタスクを切り替えられる
capistrano
 https://github.com/capistrano/capistrano
capistrano
 https://github.com/capistrano/capistrano
capistrano
 https://github.com/capistrano/capistrano

   リポジトリからコードをダウンロード
capistrano
 https://github.com/capistrano/capistrano

   リポジトリからコードをダウンロード


        リビジョンごとのディレクトリに展開
capistrano
 https://github.com/capistrano/capistrano

   リポジトリからコードをダウンロード


        リビジョンごとのディレクトリに展開


            ログ・静的ファイル等をリンク
capistrano
 https://github.com/capistrano/capistrano

   リポジトリからコードをダウンロード


        リビジョンごとのディレクトリに展開


            ログ・静的ファイル等をリンク


                 必要なgem、rails自体のインストール
capistrano
 https://github.com/capistrano/capistrano

   リポジトリからコードをダウンロード


        リビジョンごとのディレクトリに展開


            ログ・静的ファイル等をリンク


                 必要なgem、rails自体のインストール


                     サービスを再起動
capistrano
 https://github.com/capistrano/capistrano
capistrano
 https://github.com/capistrano/capistrano



サーバ側にcapistranoは不要

rails含めgemは一切不要

ただしrubyとbundlerだけは必要
運用編
Operation
rvm/rbenv
rvm/rbenv
RVM http://beginrescueend.com/
rvm/rbenv
RVM http://beginrescueend.com/

rbenv https://github.com/sstephenson/rbenv
rvm/rbenv
RVM http://beginrescueend.com/

rbenv https://github.com/sstephenson/rbenv



 なるべくサーバ側にも入れておくべき

 gemの管理はbundlerがやってくれるので不要
サーバ構成
サーバ構成


   WWWサーバ(フロントエンド)
サーバ構成


   WWWサーバ(フロントエンド)


     バックエンドサーバ
サーバ構成


   WWWサーバ(フロントエンド)


     バックエンドサーバ


        DBサーバ
サーバ構成


   WWWサーバ(フロントエンド)


     バックエンドサーバ

                     Rails本体
        DBサーバ
サーバ構成
 ロードバランサ


     WWWサーバ(フロントエンド)


       バックエンドサーバ

                       Rails本体
           DBサーバ
サーバ構成
 ロードバランサ               キャッシュサーバ


     WWWサーバ(フロントエンド)


       バックエンドサーバ

                         Rails本体
           DBサーバ
バックエンド
バックエンド
Unicorn
thin
Rainbows!
mongrel
Webrick
Passenger
バックエンド
バックエンド
バックエンド


適当なポートで待ち受ける

フロントエンドからリバースプロキシで接続
バックエンド
バックエンド
バックエンド
 フロントエンドを挟む理由
バックエンド
 フロントエンドを挟む理由




静的コンテンツ(画像など)をいちいちRailsで処理する
のは馬鹿げている
バックエンド
バックエンド
バックエンド
WWWサーバ(フロントエンド)
バックエンド
WWWサーバ(フロントエンド)
バックエンド
WWWサーバ(フロントエンド)




  バックエンドサーバ
バックエンド
WWWサーバ(フロントエンド)




  バックエンドサーバ
バックエンド
WWWサーバ(フロントエンド)




  バックエンドサーバ
バックエンド
WWWサーバ(フロントエンド)




  バックエンドサーバ
バックエンド
                   静的コンテンツは

WWWサーバ(フロントエンド)   フロントエンドが直接処理




  バックエンドサーバ
Unicorn
Unicorn
http://unicorn.bogomips.org/
Unicorn
http://unicorn.bogomips.org/
Unicorn
http://unicorn.bogomips.org/


定番

高速

ダウンタイムなしで再起動可能

worker1つにつき1リクエスト
その他
その他

  Thin
その他

  Thin

      http://code.macournoyer.com/thin/
その他

    Thin

      http://code.macournoyer.com/thin/

  Rainbows!
その他

    Thin

      http://code.macournoyer.com/thin/

  Rainbows!

        http://rainbows.rubyforge.org/
その他

    Thin

      http://code.macournoyer.com/thin/

  Rainbows!

        http://rainbows.rubyforge.org/


                 よく知りません
あまり使わない
あまり使わない
mongrel
Webrick
あまり使わない
mongrel
Webrick

     開発時のサーバとしては使う
Passenger
Passenger
 http://www.modrails.com/
Passenger
 http://www.modrails.com/

“mod_rails”
バックエンドプロセスが不要

基本的にApacheのみ

立ち上がりが遅い

メモリひかえめ
フロントエンド
フロントエンド

 基本的に何でもOK
フロントエンド

        基本的に何でもOK



Apache
nginx
lighthttpd
nginx
nginx
  http://wiki.nginx.org/
nginx
  http://wiki.nginx.org/
nginx
  http://wiki.nginx.org/


高速

設定が楽

Apacheのような細かいアクセス制御は不可能

バックエンドに投げるだけなら最適
Apache
Apache
Apache


Railsだけ動かすには大きすぎる

他のコンテンツと共存するなら必須の場合も

Apacheを使うならPassengerを検討する
データベース
データベース


MySQL
PgSQL
Sqlite3
データベース
  ActiveRecordが差を吸収する




MySQL
PgSQL
Sqlite3
データベース
  ActiveRecordが差を吸収する




MySQL
PgSQL
Sqlite3

          NoSQL
memcached
memcached


参照系がほとんどであれば効果は出る

他の方法で解決できるならするべき

ページキャッシュだけならVarnishの方が楽
Varnish
Varnish
https://www.varnish-cache.org/
Varnish
https://www.varnish-cache.org/
Varnish
https://www.varnish-cache.org/

透過型httpキャッシュサーバ

zero configでも動く

パラメータやcookieごとキャッシュする
Varnish
https://www.varnish-cache.org/
Varnish
https://www.varnish-cache.org/
Varnish
https://www.varnish-cache.org/


SSLを処理できない

POSTをGETに書き換えてしまうことがある

DSLがやや難解
構成例
構成例

  nginx+unicorn+varnish
構成例

   nginx+unicorn+varnish
                              SSLあり



  nginx   varnish   unicorn
構成例

    nginx+unicorn+varnish
                                SSLあり



  nginx     varnish   unicorn
                                SSLなし



  varnish   nginx     unicorn
構成例
構成例

      apache+passenger
構成例

      apache+passenger

       apache
                passenger
構成例

      apache+passenger

       apache
                passenger



      apache+unicorn
構成例

      apache+passenger

       apache
                passenger



      apache+unicorn


      apache    unicorn
構成例
構成例

  apache+nginx+unicorn
構成例

    apache+nginx+unicorn


  apache   nginx   unicorn
構成例

    apache+nginx+unicorn


  apache   nginx   unicorn


   apache+varnish+unicorn
構成例

    apache+nginx+unicorn


  apache   nginx     unicorn


   apache+varnish+unicorn


  apache   varnish   unicorn
質疑応答
質疑応答

if available?
  Question.all.map(&:answer!)
end
ご清聴ありがとうございました

Mais conteúdo relacionado

Mais procurados

Ruby – The Scripting Language
Ruby – The Scripting LanguageRuby – The Scripting Language
Ruby – The Scripting LanguageAkio Tajima
 
Vagrant入門以前
Vagrant入門以前Vagrant入門以前
Vagrant入門以前katanyan
 
Symfony Dump Server のご紹介
Symfony Dump Server のご紹介Symfony Dump Server のご紹介
Symfony Dump Server のご紹介知之 朝枝
 
サーバ構築実践入門
サーバ構築実践入門サーバ構築実践入門
サーバ構築実践入門優之 田中
 
勉強会0614 vagrant
勉強会0614 vagrant勉強会0614 vagrant
勉強会0614 vagrantYu Ito
 
Fabricによるcloud stackインストール自動化
Fabricによるcloud stackインストール自動化Fabricによるcloud stackインストール自動化
Fabricによるcloud stackインストール自動化hiroyuki nakajima
 
minneで学ぶクラウド脳
minneで学ぶクラウド脳minneで学ぶクラウド脳
minneで学ぶクラウド脳Uchio Kondo
 
10分で作るScala開発環境 using vim
10分で作るScala開発環境 using vim10分で作るScala開発環境 using vim
10分で作るScala開発環境 using vimGeorge Okada
 
Vagrant+Ansibleで検証環境を簡単構築
Vagrant+Ansibleで検証環境を簡単構築Vagrant+Ansibleで検証環境を簡単構築
Vagrant+Ansibleで検証環境を簡単構築Ken Sawada
 
Introduction to Vim plugins developed by non-Japanese Vimmer (Japanese version)
Introduction to Vim plugins developed by non-Japanese Vimmer (Japanese version)Introduction to Vim plugins developed by non-Japanese Vimmer (Japanese version)
Introduction to Vim plugins developed by non-Japanese Vimmer (Japanese version)deris0126
 
Railsの開発環境作るぞ
Railsの開発環境作るぞRailsの開発環境作るぞ
Railsの開発環境作るぞYoichi Toyota
 
MySQL/Ruby終了のお知らせ
MySQL/Ruby終了のお知らせMySQL/Ruby終了のお知らせ
MySQL/Ruby終了のお知らせMasahiro Tomita
 
フレームワークを使うべき 3 つの理由
フレームワークを使うべき 3 つの理由フレームワークを使うべき 3 つの理由
フレームワークを使うべき 3 つの理由Kenichi Mukai
 
RubyによるMac OS Xデスクトップアプリケーション開発入門--Snow Leopard対応版
RubyによるMac OS Xデスクトップアプリケーション開発入門--Snow Leopard対応版RubyによるMac OS Xデスクトップアプリケーション開発入門--Snow Leopard対応版
RubyによるMac OS Xデスクトップアプリケーション開発入門--Snow Leopard対応版宏治 高尾
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Masahiro Nagano
 
OrePAN と cpanm を使ったCPAN モジュールの部分ミラーの運用管理 :Yokohama.pm #8
OrePAN と cpanm を使ったCPAN モジュールの部分ミラーの運用管理 :Yokohama.pm #8OrePAN と cpanm を使ったCPAN モジュールの部分ミラーの運用管理 :Yokohama.pm #8
OrePAN と cpanm を使ったCPAN モジュールの部分ミラーの運用管理 :Yokohama.pm #8Satoshi Ohkubo
 

Mais procurados (20)

Ruby – The Scripting Language
Ruby – The Scripting LanguageRuby – The Scripting Language
Ruby – The Scripting Language
 
Ruby紹介
Ruby紹介Ruby紹介
Ruby紹介
 
Vagrant入門以前
Vagrant入門以前Vagrant入門以前
Vagrant入門以前
 
Composer
 Composer Composer
Composer
 
Symfony Dump Server のご紹介
Symfony Dump Server のご紹介Symfony Dump Server のご紹介
Symfony Dump Server のご紹介
 
サーバ構築実践入門
サーバ構築実践入門サーバ構築実践入門
サーバ構築実践入門
 
勉強会0614 vagrant
勉強会0614 vagrant勉強会0614 vagrant
勉強会0614 vagrant
 
Fabricによるcloud stackインストール自動化
Fabricによるcloud stackインストール自動化Fabricによるcloud stackインストール自動化
Fabricによるcloud stackインストール自動化
 
minneで学ぶクラウド脳
minneで学ぶクラウド脳minneで学ぶクラウド脳
minneで学ぶクラウド脳
 
10分で作るScala開発環境 using vim
10分で作るScala開発環境 using vim10分で作るScala開発環境 using vim
10分で作るScala開発環境 using vim
 
Vagrant+Ansibleで検証環境を簡単構築
Vagrant+Ansibleで検証環境を簡単構築Vagrant+Ansibleで検証環境を簡単構築
Vagrant+Ansibleで検証環境を簡単構築
 
Introduction to Vim plugins developed by non-Japanese Vimmer (Japanese version)
Introduction to Vim plugins developed by non-Japanese Vimmer (Japanese version)Introduction to Vim plugins developed by non-Japanese Vimmer (Japanese version)
Introduction to Vim plugins developed by non-Japanese Vimmer (Japanese version)
 
Railsの開発環境作るぞ
Railsの開発環境作るぞRailsの開発環境作るぞ
Railsの開発環境作るぞ
 
MySQL/Ruby終了のお知らせ
MySQL/Ruby終了のお知らせMySQL/Ruby終了のお知らせ
MySQL/Ruby終了のお知らせ
 
AlibabaCloudではじめるKubernetes
AlibabaCloudではじめるKubernetesAlibabaCloudではじめるKubernetes
AlibabaCloudではじめるKubernetes
 
フレームワークを使うべき 3 つの理由
フレームワークを使うべき 3 つの理由フレームワークを使うべき 3 つの理由
フレームワークを使うべき 3 つの理由
 
RubyによるMac OS Xデスクトップアプリケーション開発入門--Snow Leopard対応版
RubyによるMac OS Xデスクトップアプリケーション開発入門--Snow Leopard対応版RubyによるMac OS Xデスクトップアプリケーション開発入門--Snow Leopard対応版
RubyによるMac OS Xデスクトップアプリケーション開発入門--Snow Leopard対応版
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
 
OrePAN と cpanm を使ったCPAN モジュールの部分ミラーの運用管理 :Yokohama.pm #8
OrePAN と cpanm を使ったCPAN モジュールの部分ミラーの運用管理 :Yokohama.pm #8OrePAN と cpanm を使ったCPAN モジュールの部分ミラーの運用管理 :Yokohama.pm #8
OrePAN と cpanm を使ったCPAN モジュールの部分ミラーの運用管理 :Yokohama.pm #8
 
Vsubuntu
VsubuntuVsubuntu
Vsubuntu
 

Destaque

Rails基礎講座 part.1
Rails基礎講座 part.1Rails基礎講座 part.1
Rails基礎講座 part.1Jun Yokoyama
 
Active support事始め
Active support事始めActive support事始め
Active support事始めJun Yokoyama
 
Rails基礎講座 part.2
Rails基礎講座 part.2Rails基礎講座 part.2
Rails基礎講座 part.2Jun Yokoyama
 
5 Tips for a Successful Social Media Strategy
5 Tips for a Successful Social Media Strategy 5 Tips for a Successful Social Media Strategy
5 Tips for a Successful Social Media Strategy Wine Glass Marketing
 

Destaque (8)

Rails基礎講座 part.1
Rails基礎講座 part.1Rails基礎講座 part.1
Rails基礎講座 part.1
 
Active support事始め
Active support事始めActive support事始め
Active support事始め
 
社内LT資料
社内LT資料社内LT資料
社内LT資料
 
Rails基礎講座 part.2
Rails基礎講座 part.2Rails基礎講座 part.2
Rails基礎講座 part.2
 
Ruby on
Ruby onRuby on
Ruby on
 
First Step TDD
First Step TDDFirst Step TDD
First Step TDD
 
Ruby with Hash
Ruby with HashRuby with Hash
Ruby with Hash
 
5 Tips for a Successful Social Media Strategy
5 Tips for a Successful Social Media Strategy 5 Tips for a Successful Social Media Strategy
5 Tips for a Successful Social Media Strategy
 

Semelhante a Real world rails

20091119_sinatraを使ってみた
20091119_sinatraを使ってみた20091119_sinatraを使ってみた
20091119_sinatraを使ってみたngi group.
 
Web技術勉強会 第33回
Web技術勉強会 第33回Web技術勉強会 第33回
Web技術勉強会 第33回龍一 田中
 
コンテナの基本 ~Docker実践~
コンテナの基本 ~Docker実践~コンテナの基本 ~Docker実践~
コンテナの基本 ~Docker実践~Ryosuke Uchiyama
 
Skinny Framework 進捗どうですか? #fud_scala
Skinny Framework 進捗どうですか? #fud_scalaSkinny Framework 進捗どうですか? #fud_scala
Skinny Framework 進捗どうですか? #fud_scalaKazuhiro Sera
 
Nseg20120825
Nseg20120825Nseg20120825
Nseg20120825hiro345
 
今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門Masahito Zembutsu
 
ローカル開発環境の構築をしよう VirtualBox + Vagrant
ローカル開発環境の構築をしよう VirtualBox + Vagrantローカル開発環境の構築をしよう VirtualBox + Vagrant
ローカル開発環境の構築をしよう VirtualBox + VagrantKazuma Kimura
 
Ruby on Rails3 Tutorial Chapter3
Ruby on Rails3 Tutorial Chapter3Ruby on Rails3 Tutorial Chapter3
Ruby on Rails3 Tutorial Chapter3Sea Mountain
 
Vagrant を Web開発環境に使う
Vagrant を Web開発環境に使うVagrant を Web開発環境に使う
Vagrant を Web開発環境に使うMasashi Shinbara
 
最強のPHP統合開発環境 PHPStorm
最強のPHP統合開発環境 PHPStorm最強のPHP統合開発環境 PHPStorm
最強のPHP統合開発環境 PHPStorm晃 遠山
 
カオスエンジニアリング入門〜ChaosBladeの紹介〜
カオスエンジニアリング入門〜ChaosBladeの紹介〜カオスエンジニアリング入門〜ChaosBladeの紹介〜
カオスエンジニアリング入門〜ChaosBladeの紹介〜Nobuhide Watanabe
 
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境Masashi Shinbara
 
静的サイトどこにする?
静的サイトどこにする?静的サイトどこにする?
静的サイトどこにする?ogawatti
 
猫でもできるRailsデプロイ
猫でもできるRailsデプロイ猫でもできるRailsデプロイ
猫でもできるRailsデプロイtoyoshi
 
Testing and packaging WebRTC Stack
Testing and packaging WebRTC StackTesting and packaging WebRTC Stack
Testing and packaging WebRTC StackAlexandre Gouaillard
 
Dockerハンズオン
DockerハンズオンDockerハンズオン
DockerハンズオンKazuyuki Mori
 
Scala 初めての人が Heroku で Web アプリを公開するまで
Scala 初めての人が Heroku で Web アプリを公開するまでScala 初めての人が Heroku で Web アプリを公開するまで
Scala 初めての人が Heroku で Web アプリを公開するまでHideaki Miyake
 
ゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せますゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せますinfinite_loop
 
FM音源をいじれるWebサービスを作った
FM音源をいじれるWebサービスを作ったFM音源をいじれるWebサービスを作った
FM音源をいじれるWebサービスを作ったCHY72
 

Semelhante a Real world rails (20)

20091119_sinatraを使ってみた
20091119_sinatraを使ってみた20091119_sinatraを使ってみた
20091119_sinatraを使ってみた
 
Web技術勉強会 第33回
Web技術勉強会 第33回Web技術勉強会 第33回
Web技術勉強会 第33回
 
コンテナの基本 ~Docker実践~
コンテナの基本 ~Docker実践~コンテナの基本 ~Docker実践~
コンテナの基本 ~Docker実践~
 
Skinny Framework 進捗どうですか? #fud_scala
Skinny Framework 進捗どうですか? #fud_scalaSkinny Framework 進捗どうですか? #fud_scala
Skinny Framework 進捗どうですか? #fud_scala
 
Nseg20120825
Nseg20120825Nseg20120825
Nseg20120825
 
今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門
 
ローカル開発環境の構築をしよう VirtualBox + Vagrant
ローカル開発環境の構築をしよう VirtualBox + Vagrantローカル開発環境の構築をしよう VirtualBox + Vagrant
ローカル開発環境の構築をしよう VirtualBox + Vagrant
 
Ruby on Rails3 Tutorial Chapter3
Ruby on Rails3 Tutorial Chapter3Ruby on Rails3 Tutorial Chapter3
Ruby on Rails3 Tutorial Chapter3
 
Vagrant を Web開発環境に使う
Vagrant を Web開発環境に使うVagrant を Web開発環境に使う
Vagrant を Web開発環境に使う
 
最強のPHP統合開発環境 PHPStorm
最強のPHP統合開発環境 PHPStorm最強のPHP統合開発環境 PHPStorm
最強のPHP統合開発環境 PHPStorm
 
カオスエンジニアリング入門〜ChaosBladeの紹介〜
カオスエンジニアリング入門〜ChaosBladeの紹介〜カオスエンジニアリング入門〜ChaosBladeの紹介〜
カオスエンジニアリング入門〜ChaosBladeの紹介〜
 
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
 
静的サイトどこにする?
静的サイトどこにする?静的サイトどこにする?
静的サイトどこにする?
 
猫でもできるRailsデプロイ
猫でもできるRailsデプロイ猫でもできるRailsデプロイ
猫でもできるRailsデプロイ
 
Testing and packaging WebRTC Stack
Testing and packaging WebRTC StackTesting and packaging WebRTC Stack
Testing and packaging WebRTC Stack
 
Dockerハンズオン
DockerハンズオンDockerハンズオン
Dockerハンズオン
 
らくちん Go言語
らくちん Go言語らくちん Go言語
らくちん Go言語
 
Scala 初めての人が Heroku で Web アプリを公開するまで
Scala 初めての人が Heroku で Web アプリを公開するまでScala 初めての人が Heroku で Web アプリを公開するまで
Scala 初めての人が Heroku で Web アプリを公開するまで
 
ゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せますゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せます
 
FM音源をいじれるWebサービスを作った
FM音源をいじれるWebサービスを作ったFM音源をいじれるWebサービスを作った
FM音源をいじれるWebサービスを作った
 

Real world rails

Notas do Editor

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. \n
  73. \n
  74. \n
  75. \n
  76. \n
  77. \n
  78. \n
  79. \n
  80. \n
  81. \n
  82. \n
  83. \n
  84. \n
  85. \n
  86. \n
  87. \n
  88. \n
  89. \n
  90. \n
  91. \n
  92. \n
  93. \n
  94. \n
  95. \n
  96. \n
  97. \n
  98. \n
  99. \n
  100. \n
  101. \n
  102. \n
  103. \n
  104. \n
  105. \n
  106. \n
  107. \n
  108. \n
  109. \n
  110. \n
  111. \n
  112. \n
  113. \n
  114. \n
  115. \n
  116. \n
  117. \n
  118. \n
  119. \n
  120. \n
  121. \n
  122. \n
  123. \n
  124. \n
  125. \n
  126. \n
  127. \n
  128. \n
  129. \n
  130. \n
  131. \n
  132. \n
  133. \n
  134. \n
  135. \n
  136. \n
  137. \n
  138. \n
  139. \n
  140. \n
  141. \n
  142. \n
  143. \n
  144. \n
  145. \n