IT向けに特別にオンラインで公開しているものです。詳しくは記事末尾の書籍紹介欄をご覧ください。本記事では、VirtualBoxとVagrantを用いて仮想マシン上にRailsの開発環境を整える手順を解説します。Serverを使用します。データベース管理システムとしてMySQLとPostgreSQLを仮想マシン上にインストールします。ServerをインストールしたVirtualBox仮想マシンを、Railsの開発環境として用います。仮想マシンの構築にはVagrantというユーティリティを利用すると便利です。単なる演習用のサンプルではない“本物”のRailsアプリケーションを開発しようとするとき、私たちエンジニアを悩ませる問題があります。それは、開発用のマシン(作業マシン)と実運用を行うマシン(プロダクションマシン)の環境が異なることです。ここで言う「環境」とは、OSの種類やバージョン、あるいはOS上で動くソフトウェアやライブラリの種類やバージョンを指しています。XでもLinuxでも動作するように設計されています。私たちがRailsを拡張するために導入するGemパッケージは必ずしもそうではありません。仮に動いたとしても特定の環境では振る舞いが微妙に異なったり、不具合が出たりすることがあります。この問題の単純な解決法は、作業マシンとプロダクションマシンの環境を一致させることです。あなたのPCのOSをプロダクションマシンと同じ(あるいはほぼ同等の)OSで置き換えるか、あるいはプロダクションマシンにログインしてVimやEmacsで直接ソースコードを書き換えながら開発するのです。これは言うほど簡単なことではありません。PCをRails開発以外の用途(メールの送受信、動画の再生、表計算など)にも使うのであれば、気軽にOSの入れ替えなどできません。GUIを持つテキストエディタや統合開発環境(IDE)での開発に慣れた人は、VimやEmacsでのソースコード編集に不満を抱くことでしょう。そこで現れるのが仮想マシンというオプションです。仮にあなたのPCがWindowsマシンであったとします(Macであっても同じことですが)。OSをインストールするのです(図1)。仮想マシン開発中のRailsアプリケーションは仮想マシン上で動作させます。Windows上のWebブラウザからRailsアプリケーションにアクセスして動作を確認します。他方、Railsアプリケーションのソースコードは、後述する「共有フォルダ」の機能によって、Windows上で開いて編集します。すれば、使い慣れたテキストエディタやIDEを使い続けながら、プロダクションマシンと同等の環境下でRailsアプリケーションの開発が行えることになります。バーチャルボックス))は、コンピュータ上に仮想マシンを作り出すソフトウェアの1つです。2に基づくオープンソースソフトウェアとして無償で配布されています。VirtualBoxの用語では土台となるマシンで動作しているOSをホストOS、仮想マシン上で動作しているOSをゲストOSと呼びます。ServerがゲストOSになります。ベイグラント)をひと言で説明すれば、仮想マシンの管理ツールです。VagrantはVagrantfileと呼ばれる設定ファイルの記述に沿ってVirtualBoxのAPIを呼び出し、仮想マシンを作ったり、仮想マシンを起動・停止したりします。ホストOSからゲストOSにSSHで簡単にログインできるようにお膳立てをし、共有フォルダの設定をしてくれるなど、開発者にとってうれしい機能が揃っています。仮想マシンにさまざまなソフトウェアやライブラリをインストール・設定する作業(プロビジョニング)の自動化を支援する仕組みも用意されています。Vagrantはミッチェル・ハシモト、ジョン・ベンダーらによって開発され、MITライセンスの下でオープンソースソフトウェアとして無償で配布されています。して、在ギリシャ日本国大使館に3年間勤務。中学生の頃に出会ったコンピュータの誘惑に負け、IT業界に転身。よるウェブサービス開発専業の株式会社ルビキタスを知人と共同で設立し同社代表に就任(オイアクス社長と兼任)。ITでは、より付加価値の高いコンテンツを会員サービスとして提供しています。ITのWebサイトにログインすることでさまざまな限定特典を入手できるようになります。VeloCloudが選ばれる理由SD-WANとはなにか。Linuxエンジニア育成への思いF5とNGINXの組み合わせで、サービス公開をよりセキュアに。ITがお届けするポッドキャストです。