VagrantでVirtualBox経由でubuntuを動かす

Tool

お正月はLinuxの勉強しようと思ってubuntuを触ってみたところ、Vagrantなるものを経由したほうが楽だということを知り、チャレンジしてみました。

Vagrant・VirtualBoxで仮想マシン内のubuntuに接続、ブラウザに表示させるまでの一連の流れをまとめます(けっこうハマったので・・・)。

前提

VagrantとVirtualBoxのインストールは終わっている状態からスタートします。

また、任意のBOX(今回はubuntu/trusty64)もインストールされている状態です。

ホストOS:手持ちのPC(今回はMac)
ゲストOS:仮想マシン

では、いきましょう!

ホストOS側

任意のディレクトリを作成

まずは好きな場所にディレクトリを作成し、ターミナルでそこに移動します。

mkdir //フォルダを作成

cd //移動

初期化

ディレクトリ内でVagrantを初期化しましょう。

vagrant init ubuntu/trusty64

vagrant init + 使用するboxの名前 とターミナルに入力することで、あらかじめインストールしてあるBOXを使うことができます。

Vagrantfileを編集

ここまででVagrantfileがディレクトリ内に作成されます

vi Vagrantfile

でファイルを編集。

config.vm.network :private_network, ip: "192.168.33.10" //コメントアウトを外す

編集が終わったら保存(read onlyだと言われたら :q! )

起動させる

下準備ができたのでいよいよ動かしてみましょう。

コマンドは

vagrant up

です。

他のコマンドは以下の通り。

  • vagrant status //稼働状況確認
  • vagrant suspend //一時停止
  • vagrant reload //再起動
  • vagrant destroy //削除(仮想環境を削除。ローカルのVagrantfileは残る)

グローバルなVagrantのステータスを見る

vagrant global-status

このコマンドを使えば、どのディレクトリにいてもvagrantの稼働状況を見ることができます。

destroyしたいときも上記コマンドでidを確認できます。

仮想マシンに接続

vagrant ssh

で仮想マシンに接続!

仮想マシン内で

ここまでで仮想マシン内に入れたはずですので、次に進みましょう。

apacheサーバーインストール

sudo apt install apache2

コマンドでapacheをインストールします。途中 yes/noをきかれるのでyを入力。

サーバー スタート

無事インストールが終わったら

sudo service apache2 start

でサーバー をスタート。

この段階でVagrantfileでコメントアウトを外したポート(今回は192.168.33.10)に接続すると、Apache2 Ubuntu Default Page というデフォルトのページが表示されます。

サーバー 停止をするときは  sudo service apache2 stop

ページを編集

htmlファイルは

cd /var/www/html

cdコマンドで階層(仮想マシン 内の)に移動。

sudo vi index.html

で編集できます。

ファイルの共有

仮想マシン内の共有ファイルの場所は、 /vagrant にあるので

 cd /vagrant

で移動します。

ls で中を見てみると、init時に作成したVagrantfileが入っているのがわかります。

なので、この /vagrantをドキュメントルートに設定してゆきます。

デフォルトのhtmlファイルを削除

sudo rm -rf /var/www/html 

シンボリックリンクを張る

sudo ln -fs /vagrant /var/www/html

/vagrant と、/var/www/htmlをリンクさせる。

これで、mac側でVagrantfileがあるディレクトリにindex.htmlファイル等を作成すると反映されます。



お疲れ様でした〜

タイトルとURLをコピーしました