Dockerを使って、vagrant upするだけで面倒なRailsの開発環境を瞬時に構築

このエントリーをはてなブックマークに追加
はてなブックマーク - Dockerを使って、vagrant upするだけで面倒なRailsの開発環境を瞬時に構築
LINEで送る
Pocket

概要

  • vagrant up 一発でRuby on Railsの開発環境を構築出来るようにしました。
  • ローカルのファイルシステムをDocker上のアプリケーションサーバから参照しているので好きなテキストエディタを使えます。
  • すぐにRailsで開発を行えます。カスタマイズしたい場合はForkして頂くのがいいと思います。
  • dockerあれば、chef使わなくて良いですね。

初期設定

VirtualBox用のVMイメージをダウンロードします。(任意)

あとは、サンプルコードをcloneしてvagrant upするだけです。

  • 初回は30分程度かかります。
    • Docker imageのダウンロードとimageの構築があるので。
    • これでも、Containerのベースは1つにしてあるので、ダウンロード時間は短くするようにしています。
    • UbuntuのCDNが遅いというのも1つの要因ではあります。
  • 2回目以降は30秒程度でコンテナが起動します。

http://localhost:3000/ へアクセスすると以下のような表示が出るはずです。

Screen Shot 2015-01-04 at 00.14.55

主な使い方

VMの停止

VMの起動

2回目以降は、以下のように35秒でVM、コンテナが起動します。
(MacBook Pro (Retina, Mid 2012)で計測)

Screen Shot 2015-01-04 at 00.52.20

主なソフトウェアのバージョン

  • Ruby 2.2 + Ruby on Rails 4.2
  • MySQL 5.6
  • Redis 2.8

良い点・悪い点

良い点

  • VirtlaBoxとVagrantだけあれば、容易にプロジェクト毎に統一された開発環境を構築出来る。
  • 2回目以降の起動が高速
  • ローカルのファイルシステム上のファイルを変更して、即時プレビュー出来るので好きなエディタで開発出来る。

悪い点

  • Gemfileを更新したら、
    • ./d rebuildしてrailsのイメージを再構築する必要があり、bundle installをゼロから行うため時間が4分ぐらいかかる。
    • 手元のホストでもコマンドを直接打つためにbundle installしないといけない。
  • 開発者がDockerの使い方を知る必要がある

その他

参考資料

このエントリーをはてなブックマークに追加
はてなブックマーク - Dockerを使って、vagrant upするだけで面倒なRailsの開発環境を瞬時に構築
LINEで送る
Pocket

matsubokkuri

Please feel free to contact me via e-mail, twitter and facebook!

あわせて読みたい

3件のフィードバック

  1. Yuki Matsukura より:

    http://qiita.com/advent-calendar/2014/docker
    この1日目に書かれているツールを使えばシェルスクリプトの代わりに、YAMLに設定を書けそう。

    あと、プロダクションへのデプロイが考慮されていないので、その辺も追加する。

  2. Yuki Matsukura より:

    まぁ、この手法は一時的な手法なので、本線はdocker-composeでオーケストレーションがよいと思います。
    自分は、この記事の手法を実際の開発では使っておりません〜

  1. 2015/12/4 金曜日

    […] Ruby 2.2 + Rails 4.2 + Unicorn + Capistrano + Docker(開発環境)(参考資料 […]

コメントを残す