TIL

Today I Learned. 知ったこと、学んだことを書いていく

共有フォルダ - 入門 - Vagrant

この記事は Vagrantの公式ページの Getting Started- Vagrant をグーグル翻訳したものです。多少、自分なりに再翻訳しています。


仮想マシンを作成することは簡単ですが、SSHで接続してターミナルベースのエディタを使用しようとする人はほとんどいない

幸い、Vagrantを使えばターミナルベースでの編集はしなくて済む

共有フォルダを使うことによってVagrantは自動的にゲストマシンとファイルを同期してくれる

デフォルトでは、ホストマシンのプロジェクトディレクトリ(Vagrantfileがあるディレクトリ)とゲストマシンの/vagrantを共有している

SSHで接続したときには/home/vagrantがカレントディレクトリになっている

しかし、/home/vagrantはホストマシンと同期している/vagrantではないので、注意が必要

ターミナルに互換性のないゲストの追加に関連するエラーが表示された場合(またはゲストの追加がない場合)は、ボックスを更新するか、hashicorp/precise64などの別のボックスを選択する必要がある

一部のユーザーはvagrant-vbguestプラグインでも成功するが、正式にはサポートされていない

SSH接続してもう一度仮想マシンに入る

$vagrant up
...
$ vagrant ssh
...
vagrant@precise64:~$ ls /vagrant
Vagrantfile

ホストマシンにあるVagrantfileとゲストマシン内で表示されているVagrantfileは同じファイル

それを証明するためにtouchでファイルを編集してみる

touchコマンド
ファイルのタイムスタンプを変更するコマンド
また、存在しないファイルを指定すると新規作成する


vagrant@precise64:~$ touch /vagrant/foo
vagrant@precise64:~$ exit
$ ls
foo Vagrantfile

おぉ!!fooというファイルがホストマシン上に作成されている!

この通り、Vagrantはフォルダを同期させているのです

共有フォルダでは、ホストマシン上で好きなエディタを使い、ゲストマシンにファイルを同期させることができる

次のステップ

今回は、ゲストマシンとホストマシンのフォルダを同期することに成功しました

次回は、パッケージやユーザーのインストールについて学ぶ

次回:プロビジョニング

参考文献

Synced Folders - Getting Started - Vagrant by HashiCorp


目次