SELOG

SEが困ったときに見るメモ

Vagrantの基本的な使い方

本記事の環境

OS:Windows 11 Home (64 bit)
CPU:AMD Ryzen 5 3500U Radeon Vega Mobile Gfx 2.10 GHz
RAM:20 GB

参考書籍

Vagrantのインストール

Vagrantのインストールと最低限の利用方法は以下の記事を参照のこと

selog.hateblo.jp

ゲストマシンのインストール

Vagrantで利用できるLinuxの各ディストリビューションは以下の記事を参照のこと

selog.hateblo.jp

selog.hateblo.jp

Vagrantfileの内容

config.vm.box_check_update

config.vm.box_check_update = false

boxの更新確認の設定
有効にすることで「vagrant up」実行時にboxの更新を確認する
true:更新を確認する
false:更新を確認しない

config.vm.network(ポート転送)

config.vm.network "forwarded_port", guest: 80, host: 8080

ポート転送の関連付けの設定
ホストマシンのポートからゲストマシンのポートへの接続を許可する
この設定では開いているポートに無条件でアクセスできるので注意が必要

config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"

ポート転送の関連付けの設定
ホストマシンのポートからゲストマシンのポートへの接続を許可する
この設定では開いているポートにホストマシンからのみアクセス可能

config.vm.network(プライベートネットワーク)

config.vm.network "private_network", ip: "192.168.33.10"

プライベートネットワークを作成する設定
有効にすることで指定したIPアドレスがゲストマシンに設定される

config.vm.network(パブリックネットワーク)

config.vm.network "public_network"

パブリックネットワークを作成する設定
有効にすることで同一ネットワーク上の別の端末からアクセスできるようになる

config.vm.synced_folder

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

ホストマシンとゲストマシン間の共有ディレクトリを作成する設定
第1引数:ホストマシンに存在するディレクトリのパス
第2引数:ゲストマシンにマウントするディレクトリのパス

vb.gui

vb.gui = true

VirtualBox GUIの表示設定
有効にすることでゲストマシン起動時に VirtualBox GUI を表示する
true:VirtualBox GUI を表示する
false:VirtualBox GUI を表示しない

vb.memory

vb.memory = "1024"

ゲストマシンのメモリー容量の設定
指定した値(MB単位)がゲストマシンに割り当てられる

ゲストマシンを起動と停止

起動 boxのディレクトリ(Vagrantfileファイルがある場所)に移動後

vagrant up

停止 boxのディレクトリ(Vagrantfileファイルがある場所)に移動後

vagrant halt

ターミナルソフトウェアでゲストマシンに接続する

ゲストマシンのSSH接続設定を確認

vagrant ssh-config

Host default
HostName 127.0.0.1
User vagrant
Port 2222
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
PasswordAuthentication no
IdentityFile C:/almalinux9/.vagrant/machines/default/virtualbox/private_key
IdentitiesOnly yes
LogLevel FATAL

接続先 127.0.0.1

ユーザ名 vagrant

ポート 2222

鍵ファイル C:/almalinux9/.vagrant/machines/default/virtualbox/private_key

パスワード vagrant

ゲストマシンの一覧を表示

vagrant box list

ゲストマシンの削除

vagrant box remove [box名]

[box名]は上述した「ゲストマシンの一覧を表示」で確認