読者です 読者をやめる 読者になる 読者になる

モノクロタイム

I'm from the future!

【Vagrant】Caffeの実行環境をVagrantで作る

DeepLearning Ubuntu VirtualBox 研究

こんにちは,れいじです.

今年の1月に研究室で使用していたPCが落雷を切っ掛けにポックリ逝ってしまいました.DRAMエラーが止まらないので原因はメモリかと思いきや,マザーボードが壊れてました.

そして先日マザーボードを取り替え,やっと復活させることが出来ました.

出来たのですが,研究室のPCで構築していたCaffeの実行環境が古く,実際に使用している環境とは勝手が違うので作業がやりづらい…

ということで,Vagrantの復習ついでに,Vagrantを使用して手軽に使用できる開発環境を作ることにしました.

Vagrantとは,Webアプリやシステムを構築する際に面倒な開発環境の構築の手順をテンプレート化しておくことで,とても簡単に環境構築を行ってくれるようなツールです.

VagrantVirtualBoxというOracle社が開発した仮想化ソフトウェアと合わせて使用します.ということで,VagrantVirtualBoxをインストールしましょう.

VirtualBox:Downloads – Oracle VM VirtualBox

Vagrant:Vagrant

Vagrantの日本語ドキュメントも有志の方々が作ってくれています.ありがとうございます!

Vagrant日本語ドキュメント

今回私が作業した環境は

です.

boxの作成

boxとは,先述したテンプレートの事を指します.

boxをイチから自分で作ることも出来ますが,ユーザが多いLinuxディストリビューションは既にboxが用意されている場合があります.以下のURLからどんなboxが用意されているか探すことが出来ます.

A list of base boxes for Vagrant - Vagrantbox.es

vagrant box [name] [url]

以上のコマンドで既にあるboxを取得できます.

Ubuntu14.04 LTSを導入する場合は,以下のようなコマンドでboxを取得することが出来ます.

vagrant box caffe https://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-amd64-vagrant-disk1.box

大体10分程度でダウンロードが完了します.これでCaffeという名前でUbuntu14.04LTSのboxを手元に作ることが出来ました.

きちんとboxが作成できたか,以下のコマンドで調べる事ができます.

vagrant box list

Vagrant Fileの作成

Vagrant Fileは構築している環境の情報を記載したファイルで,Rubyで書かれており自由にカスタマイズすることが出来ます.このファイルを共有することで同じ作業環境を複数のマシンで構築することが出来ます.

まず,任意の場所にVagrant Fileを保存しておくディレクトリを作成し,作ったディレクトリへ移動します.

mkdir hoge/fuga/caffe
cd hoge/fuga/caffe

そして,以下のコマンドを入力しVagrant Fileを作成します.

vagrant init caffe

これで仮想環境が出来たも同然です.

仮想環境を立ち上げる

作った仮想環境は,以下のコマンドで起動させることが可能です.

vagrant up

起動時にはステータスなどがドドドッと表示されますが,エラーが出ずに終了すればきちんと立ち上がった事になります.

仮想環境の中に入ってファイル操作等を行う場合は,以下のコマンドで仮想環境の中に入ることが出来ます.あとは必要なパッケージをapt-getなりpipなりで各自入れる事ができます.

vagrant ssh

Caffeに必要なパッケージの導入については

reiji1020.hatenablog.com

reiji1020.hatenablog.com

この通りにパッケージをインストールして,Caffeビルドして,おわり.

このVagrantFileを使用して研究室のPCや他PCにCaffeの実行環境を簡単に作る事が出来ました!

その他のコマンド

  • 仮想環境の再起動
vagrant reload
  • 仮想環境の電源OFF
vagrant halt
vagrant destroy

これから

Vagrant FileとかUPしといたら捗る人とかいるんだろうか.気が向いたらダウンロード出来るようにしておきます.

実践 Vagrant

実践 Vagrant

おうちで学べる仮想化のきほん

おうちで学べる仮想化のきほん