[Vagrant][VirtualBox][Mac] Mac環境でVagrantからVirtualBoxを起動する_2

# 環境
MacBook Pro (2.3 GHz 8コアIntel Core i9)
macOS 14.0（23A344）
Homebrew 4.3.8
gh 2.52.0

# 目次
- [ディレクトリ構成](#ディレクトリ構成)
- [手順](#手順)
- [SSH接続情報を~/.ssh/configファイルに設定して、sshコマンドで仮想マシンへSSHログインできるようにする](SSH接続情報を~/.ssh/configファイルに設定して、sshコマンドで仮想マシンへSSHログインできるようにする)

# ディレクトリ構成
~~~:directory_structure
drive/ ←ルートディレクトリ
├── Applications/
├── Syetem/
└── Usr/
│   ├── shared/
│   └── personnel(ex. Jochun)/　←ホームディレクトリ
│       ├── MyVagrant/
│       │   ├── MyTest001/
│       │   │   ├── Vagrantfile (viniciusfs/centos7) 
│       │   │   └── .vagrant (仮想マシン)
│       │   └── MyTest002/
│       │       ├── Vagrantfile (ubuntu/trusty64) ←今回インストールしたVagrantboxによって作成されたVadrantfile
│       │       └── .vagrant (仮想マシン)
│       ├── Desktop/
│       ├── Downloads/
│       ├── Documents/
│       ├── .config/
│       ├── .ssh/
│       ├── .zshrc/
│       └── .local/
│           ├── .bin
│           └── 
~~~

# 手順
~~~bash:terminal
// Vagrantで管理する仮想マシン用にホームディレクトリ直下にディレクトリを作成する
$ mkdir MyVagrant

// 作成したディレクトリに移動する
$ cd MyVagrant

// 仮想サーバ１台につき、１つのディレクトリが必要なため、ディレクトリを作成する
$ mkdir MyTest002

// 作成したディレクトリに移動する
$ cd MyTest002

// 使用したいVagrantbox※1をインストールする
// $ vagrant box add [box-name]
$ vagrant box add ubuntu/trusty64

    // 過去の方法
    // $ vagrant box add [box-name] [URL※2]
    $ vagrant box add ubuntu/trusty64 https://atlas.hashicorp.com/viniciusfs/boxes/centos7/(例)

// 仮想マシン設定用のVagrantfileを作成する
// $ vagrant init [box-name]
$ vagrant init ubuntu/trusty64

// 仮想マシンを起動する
$ vagrant up

// 仮想マシンの状態を確認する
// running※3となっていれば正常に動作している
$ vagrat status

~~~

VirtualBoxを開くと下記のように、仮想マシンが作成されていることが確認できる。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2955010/c88b7a61-fd10-a8e0-4946-102bf0e8ea70.png)

## 注意点
1. ※1
主要なVagrantBoxは[Discover Vagrant Boxes](https://portal.cloud.hashicorp.com/vagrant/discover)から確認できる
`Discover Vagrant Boxes`に記載の`Box name`を手順の`[box-name]`に入力する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2955010/9c86ac6f-d7e2-6f87-ac0e-06859b6367e7.png)


1. ~~※2~~
~~URLは[ここ](https://www.vagrantbox.es)のURL列から取得できる~~
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2955010/52dcdf66-115d-7f7e-1249-9dd11c099ef8.png)


1. ※2
最新のVagrantでは、URLの記載は不要。
    > 古いバージョンの`Vagrant`では`URL`を指定していましたが、今は`Box`の名前を指定できるようになったので名前を指定するのが一般的です。 
    [Vagrant の Box の基本操作(追加・更新・削除・一覧)を覚えよう](https://weblabo.oscasierra.net/vagrant-box/)

    > This will download the box named hashicorp/bionic64 from HashiCorp's Vagrant Cloud box catalog, where you can find and host boxes.
[Install a box (optional)](https://developer.hashicorp.com/vagrant/tutorials/getting-started/getting-started-boxes#install-a-box-optional)


1. ※3
下記の表示
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2955010/29e3c0e2-ff64-29b9-3172-cab9cd3f68e7.png)


# 仮想マシンにSSH接続する
~~~bash:terminal
// 仮想マシンにログインする（SSH接続する）
$ vagrant ssh

// ログアウトする
vagrant@localhost$ exit

~~~

# SSH接続情報を~/.ssh/configファイルに設定して、sshコマンドで仮想マシンへSSHログインできるようにする
~~~bash:terminal
// 仮想マシンへのSSH接続情報を確認する
$ vagrant ssh-config
~~~

SSH接続情報が表示される（Host名はdefaultであることが確認できる）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2955010/265a2c5f-a396-6597-2030-1d65b553dde8.png)

~~~bash:terminal
// SSH接続情報を~/.ssh/configファイルに追記する
$ vagrant ssh-config >> ~/.ssh/config

// 仮想マシンにログインする（SSH接続する）-sshコマンド
$ ssh default

// ログアウトする
vagrant@localhost$ exit

~~~



# 参考リンク
- [MacでのVagrantの使い方とコマンドについて（VirtualBoxに仮想マシンを作成）](https://www.task-notes.com/entry/20150527/1432695600)
- [Discover Vagrant Boxes](https://portal.cloud.hashicorp.com/vagrant/discover)
- [Vagrant の Box の基本操作(追加・更新・削除・一覧)を覚えよう](https://weblabo.oscasierra.net/vagrant-box/)
- [vagrantで起動した仮想マシンにsshコマンドで接続する](https://it-jog.com/khow/vag/vag-sshconnection)