(2026年11月更新:リンク切れを外し、現在の Mac での注意を追加しました)
今の Mac での Vagrant の使い方はこちらの記事を見てください。 Macで仮想マシンを作る Vagrant と Docker・OrbStack・Lima
Vagrant では次のフォルダが初期状態で共有されます。
ホストマシン : 起動フォルダ(Vagrantfile があるフォルダ)
ゲストマシン : /vagrant/
共有フォルダのパーミッションはゲストマシンでは変更できません。ホストマシンの Vagrantfile に次のように設定します(ディレクトリ 777、ファイル 666 の例です)。
config.vm.synced_folder ".", "/vagrant", mount_options: ['dmode=777','fmode=666']
共有フォルダを Web サーバーのドキュメントルートにしていると、ゲストマシンの起動時には共有フォルダがまだ使えず、Web サーバーが起動しないことがあります。
Vagrantfile に次のように書くと、毎回の起動のあとに実行できます。
config.vm.provision :shell, run: "always", :inline => <<-EOT
sudo systemctl start apache2
EOT
サービス名はゲストの OS に合わせて変えてください。
config.vm.synced_folder ".", "/vagrant", disabled: true
(2026年11月更新:CentOS 5・PHP 5 向けの手順を外し、Apple シリコンの Mac に合わせて書き直しました)
開発用のサーバー環境を Mac の中に作る方法です。
Web 開発の環境なら、今は仮想マシンより Docker を使うことが多くなっています。
brew install --cask docker-desktopbrew install --cask orbstackbrew install limahttps://developer.hashicorp.com/vagrant/downloads
brew install --cask vagrant
Vagrant は、仮想マシンの作成を Vagrantfile という設定ファイルで自動化するツールです。実際に仮想マシンを動かすソフト(プロバイダー)は別に必要です。
box は次のサイトで探します。 https://portal.cloud.hashicorp.com/vagrant/discover
以前紹介していた CentOS は開発が終わっています。今から作る場合は Ubuntu などを選んでください。
mkdir ~/Vagrant/ubuntu
cd ~/Vagrant/ubuntu
vagrant init bento/ubuntu-24.04
vagrant up
| 操作 | コマンド |
|---|---|
| 起動 | vagrant up |
| 停止 | vagrant halt |
| 再起動 | vagrant reload |
| 状態の確認 | vagrant status |
| SSH で接続 | vagrant ssh |
| box の一覧 | vagrant box list |
| box の削除 | vagrant box remove box名 |
| 仮想マシンの削除 | vagrant destroy |
vagrant ssh-config
表示された HostName、Port、IdentityFile を使って接続します。
ssh [email protected] -p 2222 -i 表示された秘密鍵のパス
box のデータは初期状態で ~/.vagrant.d に保存されます。外付けディスクなどに変える場合は次のように設定します。
export VAGRANT_HOME=/path/to/hdd/vagrant.d
共有フォルダの設定はこちらの記事を見てください。 Vagrant の共有フォルダの設定とパーミッション