38
36

More than 5 years have passed since last update.

mac に vagrant で CentOS にRails環境構築メモ

Last updated at Posted at 2014-03-15

VirtualBox インストール

https://www.virtualbox.org/wiki/Downloads
からダウンロードしてインストール

Vagrant入れる

https://www.vagrantup.com/downloads.html
からダウンロードしてインストール

とりあえず仮想環境立ち上げ

ターミナルから

$ vagrant box add chef/centos-6.5
$ vagrant init chef/centos-6.5
$ vagrant up

※chef/centos-6.5には sqlite が既にインストール済み

すると、box のダウンロード等が始まる。
インストール完了したら

$ vagrant ssh

で仮想環境に接続

Guest Addition の自動更新

vagarant up する時にGuest Addition を自動更新するプラグインをインストールする

$ vagrant plugin install vagrant-vbguest

インストール完了したら、VMを再起動

$ vagrant reload

TimeZone設定

以下の通り設定
http://qiita.com/snaka/items/a291423d6ceac9f091a7

ポート 3000 を外部からアクセス可能に

参考: http://fuzz-jpn.com/blog/vagrant_rails_server_browser/

sudo vi /etc/sysconfig/iptables で以下のとおり編集

# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 3000 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

git コマンドインストール

以下を参考にgitコマンドインストール
http://qiita.com/snaka/items/64cb8aec94da38483996

ruby 関連コマンドのインストール

rbenv + ruby-build で ruby 関連コマンド(ruby, gem, rake 等)をインストールする

rbenv

以下に従ってインストール
https://github.com/sstephenson/rbenv/blob/master/README.md

ruby-build

以下に従ってインストール
https://github.com/sstephenson/ruby-build#readme

ruby

あらかじめ必要そうなパッケージを入れておく

$ sudo yum install gcc gcc-c++ zlib-devel openssl-devel readline-devel ncurses-devel libyaml-devel sqlite-devel patch
  • gcc, openssl-devel はrubyのビルドに必要
  • gcc-c++ は therubyracer のインストールに必要
  • sqlite-devel はアプリで利用してるので入れておく
  • あとは雰囲気で

以下コマンドでインストール可能な ruby バージョンの一覧を確認

$ rbenv install --list

現時点(3/15)で最新の ruby 2.1.1 をインストールする

$ rbenv install 2.1.1

インストール結果の確認し、使用するバージョンを設定する。

# 使用可能なバージョンを確認
$ rbenv versions

# rubyのバージョンを設定
$ rbenv global 2.1.1

# バージョン確認
$ ruby -v

bundler のインストール

$ gem install bundler

試しに rails でサンプル作成

# railsインストール
$ gem install rails

# javascript 実行ランタイムの設定
$ gem install therubyracer
$ vim Gemfile  # gem 'therubyracer' の行を有効にする

# サンプルアプリ作って実行
$ rails new myapp
$ cd myapp

# --binding 指定しないと仮想端末内でのlocalhostでしかアクセスできない
$ rails server --binding=0.0.0.0

ゲストOS内で rails アプリケーションにアクセス

以下のコマンドでHTMLのレスポンスが帰ってきたらOK。

$ curl http://localhost:3000

ホストOSからアクセス

以下のとおり Vagrantfile を設定し、ゲストOSのポート3000をホストOSにポートフォワーディングする。

 config.vm.network "forwarded_port", guest: 3000, host: 3000

vagrant reload の後、ゲストOSで先のサンプルアプリサーバを起動して、ホストOSから http://localhost:3000 にアクセスして Rails のサンプルアプリが表示されたらOK。

38
36
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
38
36