Vagrantで動いているUbuntuとWindowsとでディレクトリを共有する

はじめに

Windows上でVirtualBox+Vagrantで動いているUbuntuとWindowsとでファイルの受け渡しとかをやりやすい様に共有ディレクトリを作成します。
前提として、既にVagrantからUbuntuを起動出来ている事とします。

Vagrantfileの編集

Vagrantfileを開いて

# config.vm.synced_folder "../data", "/vagrant_data"

となっているところを

config.vm.synced_folder "./data", "/vagrant_data"

と修正し、保存します。
./dataの部分がWindows側のディレクトリで/vagrant_dataがUbuntu側のディレクトリとなります。

このまま起動すると、

$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
There are errors in the configuration of this machine. Please fix
the following errors and try again:

vm:
* The host path of the shared folder is missing: ./data

な感じで怒られます。

共有ディレクトリの作成

Windows側の共有ディレクトリは自動で作成されない様なので、自分で作成します。
./dataとしているのでVagrantfileがあるディレクトリにdataでディレクトリを作成します。

ついでに作成したディレクトリの中にtest.txtと適当なファイルを作成しておきます。

Vagrant UP

$ vagrant up

で、問題なく起動出来れば

$ ls /vagrant_data
test.txt

と実行して先程適当に作成したファイルが見えていれば共有できているはずです。

さいごに

個人的にターミナル上のエディターに慣れていないので、共有を利用してWindows側で編集しようと考えたのがファイル共有の一番の理由です。
ターミナル上での編集も慣れないといけないのですが…ぼちぼちと…。

Windows10上にVagrant+VirtualBoxで環境を作る

はじめに

Windows上に汚れたら使い捨てられる開発環境を作りたいと思い立ちました。 業務でよく使っているのはVMwareなのですが、折角なのでVirtualBox+Vagrantでubuntuの環境を立ち上げて見たいと思います。
そのメモです。

VirtualBoxのインストール

https://www.virtualbox.org/wiki/Downloads
Windowsなので”Windows hosts”のリンクからダウンロードします。
ダウンロード完了後、インストールを実施します。
いくつか質問が来ますが、次々進んで大丈夫(のはず)です。

Vagrantのインストール

https://www.vagrantup.com/downloads.html
Windowsの欄にあるリンクからダウンロードします。
32bit/64bitは端末に合わせてください。
こちらもいくつか質問が来ますが、次々進んで大丈夫(のはず)です。

インストール後に再起動を行います。
そしてコマンドプロンプトで

$ vagrant -v
Vagrant 2.2.3

な感じで表示されればOKです。

ディレクトリの作成

今回はubuntuが動く様にしたいので、以下の様なディレクトリを作成して移動します。

$ mkdir ./vagrant
$ cd ./vagrant
$ mkdir ./ubuntu
$ cd ./ubuntu

インスタンスの作成&実行

https://app.vagrantup.com/boxes/search
にアクセスし、利用したいBOXを探す。
今回はubuntuなので、
https://app.vagrantup.com/ubuntu/boxes/bionic64
を利用する事にする。
公式のBOXなのかな?

# 初期化。 この時点ではまだBoxはダウンロードされないのですぐに終わる。
$ vagrant init ubuntu/bionic64
# 実行。 ここでダウンロードが行われるので中々時間がかかる…。
$ vagrant up

ネット環境や時間によるとは思うのですが、私の環境ではかなり時間がかかりました。 20分~60分程…。 時間がかかりそうな場合は他の事でもして気長に待ちましょう…。

ダウンロードが完了するとubuntuを立ち上げようとしますが、この時BIOSがどうのでエラーが発生しました。
書かれているメッセージに従って、Windowsを再起動してBIOS画面に入り仮想化支援機能(?)を有効にします。 その後再度ubuntuを立ち上げると正常に起動しました。
BIOS画面は端末により異なると思いますので、以下のページ等を参考に設定しましょう。
ただ、ここで立ち上がらない原因はいくつかある様なので、状況によってGoogle先生等に訊いて進める必要がありそうです。

$ vagrant ssh

で、立ち上げたubuntuに繋がれば起動OKです。

とりあえずここまででubuntuが立ち上がりました。
しかしVagrantfileとかその他諸々にかなりの設定項目があるので、ほとんど把握できていません。 色々試したいと思います。

おわりに

この環境を使って、何かアプリを作っていきたいと思います。

普段、要件とか設計とかがメインになのでこの辺りは素人同然なので、ツッコミどころや誤りがあればご教授いただければありがたいです。
ありがとうございました。