今回は、Vagrantを利用してMacのローカルに仮想マシンを立て、そこにRuby on Railsの開発環境を構築・インストールしていきます。その開発環境で作成したプロジェクトをローカルで動かすところまでの手順をご案内をします。
項目 | バージョン |
---|---|
macOS | Sierra 10.12.4 |
ruby | 2.3.4 |
rails | 5.0.2 |
VirtualBox | 5.1.18 platform packages |
Vagrant | 1.9.3 |
1、事前準備:仮想マシン作成
Vagrantを利用するためには、VirtualBoxが必要になります。そのため、VirtualBoxとVagrantの両方をインストールしていきます。
1-1、VirtualBoxのインストール
VirtualBoxを各自の環境に合わせてダウンロードします。
今回は、Macを利用しているので、OS Xをダウンロードします。
1-2、Vagrantのインストール
Vagrantを各自の環境に合わせてダウンロードします。
今回は、Macを利用しているので、Mac OS XのUniversal (32 and 64-bit)をダウンロードします。
1-3、仮想マシンの取得
今回は、CentOS7のBoxを選んでBoxListに追加します。
$ vagrant box add centos7 https://github.com/tommy-muehle/puppet-vagrant-boxes/releases/download/1.1.0/centos-7.0-x86_64.box
なお、追加したBoxは下記コマンドで一覧を確認できます。
$ vagrant box list
1-4、仮想マシンの作成・設定
追加したBoxから仮想マシンを作成・設定します。
$ vagrant init centos7
仮想マシンを作成すると、そのディレクトリに下記ファイルが生成されるので、ローカルで動作させる場合は下記の通り編集します。
$ vi Vagrantfile
今回の編集箇所は25行目付近です。
下記設定箇所のコメントアウトを外し、下記の通り、guestとhostを3000に設定します。
config.vm.network "forwarded_port", guest: 3000, host: 3000
この設定により、仮想マシンで作成したプロジェクトを動作させることができます。
2、ruby on railsの環境構築
ここからは、作成した仮想マシンにログインし、そこでRuby on Railsでプロジェクトを作成するための開発環境を構築・インストールしていきます。
2-1、仮想マシンにログイン
boxを作成したディレクトリで下記コマンドを実行し、仮想マシンにログインします。
$ vagrant ssh
2-2、開発環境構築の準備
作成した仮想マシンにはすでにRubyがインストールされていますが、バージョンが古いので削除をします。その後、yumのパッケージをアップデートします。
$ ruby -v
$ sudo yum -y remove ruby
$ sudo yum update
$ sudo systemctl stop firewalld
$ sudo systemctl mask firewalld
AWS EC2(Amazon Linux)の場合、下記パッケージもインストールする必要があります。
$ sudo yum install git gcc openssl-devel
2-3、rbenvリポジトリをcloneする
rbenvリポジトリをgitでcloneします。そのため、まずは先にgitをインストールします。
$ sudo yum -y install git
$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
rbenvリポジトリをcoloneしたら、PATHを通し、ターミナル(bash)実行時に rbenv init を実行するように設定します。
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
$ cat ~/.bash_profile
$ source ~/.bash_profile
なお、rbenvのバージョンは下記コマンドを実行することで確認できます。
$ rbenv --version
2-4、Rubyのインストール
rbenvを利用してRubyをインストールしますが、その際に異なるバージョンのRubyをコンパイルしインストールするためのrbenvのプラグインであるruby-buildを先にインストールします。
$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
インストールできるバージョンが下記コマンドを実行することで一覧で表示されます。今回は、最新のバージョンをインストールします。
$ rbenv install -l
$ rbenv install 2.3.4
$ rbenv global 2.3.4
2-5、Railsのインストール
バンドラーをインストール後、Railsをインストールします。
今回は最新バージョンのRailsをインストールします。
$ rbenv exec gem install bundler
$ rbenv rehash
$ gem search -r rails | grep "^rails ("
$ gem install rails
2-6、プロジェクトの作成と起動
下記コマンドを実行することで、新しいアプリケーションが作成され、動作します。
http://localhost:3000/
にアクセスするとRuby on Railsのデフォルトのトップページが確認できます。
$ rails new cat
$ bundle exec rails server -b 0.0.0.0