0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

VagrantでUbuntu立てるメモ

Last updated at Posted at 2024-12-10

UbuntuのLTSにはコードネームがある。

  1. Vagrantfileの作成
    vagrant init ubuntu/bionic64
    ubuntu/bionic64 (Ubuntu 18.04 LTS)
    ubuntu/focal64 (Ubuntu 20.04 LTS)
    ubuntu/jammy64 (Ubuntu 22.04 LTS)

  2. Vagrantfileの確認

Vagrantfile
# Vagrant構成ファイルバージョン2
Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/bionic64"
  config.vm.network "private_network", type: "dhcp"
  config.vm.provider "virtualbox" do |vb|
    vb.memory = "1024"
    vb.cpus = 2
  end
end
  1. 仮想マシンを起動
vagrant up
  1. 接続
vagrant ssh
  1. 停止
vagrant halt
  1. 削除
vagrant destroy

コードネーム対応表

Ubuntuバージョン: コードネーム
20: ubuntu/bionic64
22: ubuntu/focal64
24: ubuntu/jammy64

config.vm.network

  • フォワードネットワーク
    config.vm.network "forwarded_port", guest: 80, host: 8080
    Host側にNATを作り、ポートを対応させる
    ホストマシンからゲストマシン上の特定ポートへアクセス。開発環境向け

  • プライベートネットワーク
    config.vm.network "private_network", ip: "192.168.33.10"
    Hostにvethを立てて、VMと接続する。IPアドレスを利用して通信するが、ルーターはない。インターフェースをの間にスイッチをおいて、同一リンクにする。
    ホストマシンとゲストマシン間の通信専用。DHCPまたは静的IPが必要。

また、外部へのアクセスにおいては、VirtualBoxが管理するルーター(筆者の環境だと10.0.2.0/24)があり、VMはインターフェースとして、外部アクセス用ももつ。

オプション:
ip: "192.168.33.10"
type: "dhcp"
ipとtypeはどちらかのみを設定するものなのだと思う。

  • パブリックネットワーク
    config.vm.network "public_network"
    ホストマシン と ゲストマシン は物理ネットワーク(LAN)を共有
    外部ネットワークから直接VMへアクセス可能。注意が必要

オプション:
bridge: "ホストのインターフェース名"

ホストのインターフェース名を指定すると、そのインターフェースとスイッチで繋ぐイメージ。

ip aコマンドの出力
lladdr: Link-Layer Address。MACアドレスのこと。
dev: Device。NICのこと。
scope: IPアドレスのスコープ。global=global接続に利用できるアドレス、link=リンク通信のみに利用できるアドレス、host=そのマシンでのみ利用できるアドレス(localhostアドレス)。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?