金魚亭日常

読書,ガジェット,競技プログラミング

Vagrant を使った iRuby 環境の構築

iRubyを使ってみたいと思ったけど,Windows には対応していない,というか依存gemのrbczmqがインストールできない. ということで,VirtualBoxVagrantを使ってUbuntuをインストールして使うことに.

仮想マシンを起動してvagrant sshまで

最初は 12.04 を使った. でも,libzmq3-devが標準では提供されていないので,14.04でもやりなおした.

12.04の場合は,

vagrant box add hashicorp/precise32

14.04の場合は,

vagrant box add ubuntu/trusty32

プロキシ環境下の場合は,設定用のプラグインvagrant-proxyconfをインストールする.

vagrant plugin install vagrant-proxyconf

Vagrantfileに設定を書く.

if Vagrant.has_plugin?("vagrant-proxyconf")
  config.proxy.http     = "http://your.proxy.setting:port"
  config.proxy.https    = "https://your.proxy.setting:port"
  config.proxy.no_proxy = "localhost,127.0.0.1,.example.com"
end

localhost:8888 でnotebookを見れるように設定.

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

起動してssh

vagrant up
vagrant ssh

必要なパッケージのインストール

まずはRuby(rbenv)

sudo apt-get update
sudo apt-get install git
sudo apt-get install autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev

Python(pyenv)

sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev

rbczmq(iRubyの依存gem)

sudo apt-get install libtool pkg-config build-essential autoconf automake uuid-dev

iRuby

12.04

apt - Cannot install zeromq package from chris-lea/zeromq in 12.04 - Ask Ubuntu

memo:Ubuntu 12.04 precise で 「apt-add-repository: command not found」 : 元うなぎ屋

sudo aptitude install python-software-properties
sudo add-apt-repository ppa:chris-lea/zeromq
sudo apt-get update
sudo apt-get install libzmq3-dev

14.04

sudo apt-get install libzmq3-dev

Ruby2.2.3インストール

git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
source ~/.bashrc

git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

rbenv install 2.2.3
rbenv global 2.2.3

Python3.5.0インストール

git clone https://github.com/yyuu/pyenv.git ~/.pyenv
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
source ~/.bashrc

pyenv install 3.5.0
pyenv global 3.5.0

iRubyインストール

まずはjupyter

pip install jupyter

iRuby,推奨gem,mikon

gem install iruby
gem install pry pry-doc awesome_print gnuplot rubyvis nyaplot
gem install mikon

iRuby 起動

デフォルトでは ホスト側でvagrant upしたフォルダとゲスト側の/vagrantが共有されているので,ここを使ってファイルのやり取りができる.

cd /vagrant
iruby notebook --no-browser --ip=0.0.0.0

ホスト側のブラウザからlocalhost:8888にアクセス.

参考

Home · sstephenson/ruby-build Wiki

Common build problems · yyuu/pyenv Wiki

Get The Software - zeromq

SciRuby/iruby