「インストール - Vagrant」の版間の差分
(同じ利用者による、間の8版が非表示) | |||
1行目: | 1行目: | ||
== 概要 == | == 概要 == | ||
Vagrantfileとは、仮想マシンの構築設定などを記述するためのファイルである。<br> | Vagrantfileとは、仮想マシンの構築設定などを記述するためのファイルである。<br> | ||
例えば、"仮想マシンはCeontOS 7をインストールする"、"IPアドレスを192.168.10.10にする"等である。<br> | 例えば、"仮想マシンはCeontOS 7をインストールする"、"IPアドレスを192.168.10.10にする"等である。<br> | ||
13行目: | 12行目: | ||
Vagrantfileは一般的なファイルなので、多くのユーザに共有することもできる。<br> | Vagrantfileは一般的なファイルなので、多くのユーザに共有することもできる。<br> | ||
また、仮想マシンの構築後に必要なパッケージをインストールする場合、別ファイルに詳細な手順を記述して、Vagrantfileから呼び出すこともできる。<br> | また、仮想マシンの構築後に必要なパッケージをインストールする場合、別ファイルに詳細な手順を記述して、Vagrantfileから呼び出すこともできる。<br> | ||
<br><br> | |||
== 依存関係のライブラリのインストール == | |||
Vagrantの依存関係のライブラリをインストールするため、以下のライブラリをインストールする。<br> | |||
以下のライブラリが無い場合、<code>vagrant box add</code>コマンドが失敗する可能性がある。<br> | |||
sudo zypper install bsdtar | |||
<br><br> | <br><br> | ||
== Vagantのインストール == | == Vagantのインストール == | ||
==== バイナリファイルからインストール ==== | |||
# まず、[https://www.vagrantup.com/downloads.html Vagrantの公式Webサイト]にアクセスして、各プラットフォーム向けのVagrantをダウンロードする。<br> | # まず、[https://www.vagrantup.com/downloads.html Vagrantの公式Webサイト]にアクセスして、各プラットフォーム向けのVagrantをダウンロードする。<br> | ||
# | #: <br> | ||
#* | # Vagrantを以下の手順に従ってインストールする。 | ||
#* RPMを使用する場合 | |||
#*: ダウンロードしたRPMファイルに対して、以下のコマンドを実行する。 | #*: ダウンロードしたRPMファイルに対して、以下のコマンドを実行する。 | ||
#*: <code>sudo rpm -Uvh vagrant_< | #*: <code>sudo rpm -Uvh vagrant-<バージョン>.x86_64.rpm</code> | ||
#* | #*: <br> | ||
#*: | #* AppImageを使用する場合 | ||
#*: | #*: ダウンロードしたファイルを解凍する。 | ||
#*: <code> | #*: <code>unzip vagrant_<バージョン>_linux_amd64.zip</code> | ||
#*: <br> | |||
#*: 解凍したAppImageファイルのフルパスを、.profileファイル等に環境変数PATHを記述する。 | |||
#*: <code>vi ~/.profile</code> | |||
#*: <br> | |||
#*: <code>~/.profileファイル</code> | |||
#*: <code>export PATH="<VagrantのAppImageファイルのパス>:$PATH"</code> | |||
#*: <br> | |||
#* Windows | #* Windows | ||
#*: ダウンロードしたVagrantのインストーラを起動して、手順にしたがってインストールする。 | #*: ダウンロードしたVagrantのインストーラを起動して、手順にしたがってインストールする。 | ||
#*: <br> | |||
# PCを再起動する。 | # PCを再起動する。 | ||
<br> | |||
==== ソースコードからインストール ==== | |||
<u>ソースコードからVagrantをインストールする場合、公式インストーラが使用できない場合にのみ推奨する。</u><br> | |||
<br> | |||
ソースコードからVagrantをインストールするための前提条件と3つのステップについて以下に示す。<br> | |||
# Rubyをインストールする。 | |||
# Vagrantをクローンする。 | |||
# ローカルで設定する。 | |||
<br> | |||
まず、Rubyをインストールする。<br> | |||
Vagrantをビルドするには、特定のバージョンのRubyをインストールする必要がある。<br> | |||
必要なRubyのバージョンは、[https://github.com/hashicorp/vagrant VagrantのGithub]にあるvagrant.gemspecに記載されている。<br> | |||
<br> | |||
また、Vagrantをソースコードからインストールする場合は、プラグインの互換性にも注意する必要がある。<br> | |||
Vagrantのプラグインは現在の環境に基づいて設定されるため、ソースコードからVagrantでインストールしたプラグインは、パッケージベースのVagrantインストールでは動作しないことに注意する。<br> | |||
sudo zypper install make gcc ruby rubygem-bundler nodejs libopenssl-devel sqlite3-devel | |||
<br> | |||
次に、Vagrantのソースコードをクローンする。<br> | |||
git clone https://github.com/hashicorp/vagrant.git | |||
<br> | |||
次に、クローンしたVagrantパスを~/.profileファイル等に環境変数PATHを設定する。<br> | |||
vi ~/.profile | |||
<br> | |||
<syntaxhighlight lang="sh"> | |||
# ~/.profileファイル | |||
export PATH="<Vagrantのパス>:$PATH" | |||
</syntaxhighlight> | |||
<br> | |||
必要なライブラリおよびプラグインをインストールする。<br> | |||
cd <Vagrantのパス> | |||
bundle install | |||
<br> | |||
<code>bundle</code>コマンドを実行して、Vagrantを起動する。<br> | |||
bundle exec vagrant | |||
<br><br> | |||
== Vagrant VMwareのインストール == | |||
Vagrant VMware WorkstationまたはVagrant VMware Fusionプラグインからアップグレードする場合、Vagrantで管理している全てのVMware上の仮想マシンを停止または破棄する。<br> | |||
その後、以下の手順に従う。<br> | |||
<br> | |||
Vagrant VMwareプロバイダのインストールには2つのステップが必要である。<br> | |||
<br> | |||
まず、Vagrant VMwareユーティリティをインストールする。<br> | |||
これは、[https://developer.hashicorp.com/vagrant/downloads/vmware Vagrant VMwareユーティリティの公式Webサイト]から、RPMファイルをダウンロードしてインストールする。<br> | |||
sudo zypper install ./vagrant-vmware-utility-<バージョン>.x86_64.rpm | |||
<br> | |||
次に、Vagrant VMwareプロバイダプラグインを標準のプラグインインストール手順でインストールする。<br> | |||
vagrant plugin install vagrant-vmware-desktop | |||
<br> | |||
プラグインのインストールについて詳細を知りたい場合は、[https://developer.hashicorp.com/vagrant/docs/plugins/usage Vagrantプラグインの公式Webドキュメント]を参照すること。<br> | |||
<br> | |||
Vagrant VMware Desktopプラグインをアップデートする場合は、Vagrantから直接アップデートすることができる。<br> | |||
vagrant plugin update vagrant-vmware-desktop | |||
<br><br> | <br><br> | ||
101行目: | 170行目: | ||
vagrant destroy <box名> | vagrant destroy <box名> | ||
<br> | <br> | ||
< | <code>vagrant destroy</code>コマンドを実行しても、.vagrantディレクトリやVagrantfileファイルは残る。<br> | ||
この設定ファイルには、以前、vagrant box addしたbox情報が記述されている。<br> | この設定ファイルには、以前、vagrant box addしたbox情報が記述されている。<br> | ||
<br> | <br> | ||
< | <code>vagrant destroy</code>コマンドは、仮想マシンを削除する以外にも、仮想マシンを再作成する場合にも使用する。<br> | ||
<br><br> | |||
==== box名の変更 ==== | |||
boxの実体ファイルをリネームするだけでbox名を変更することができる。<br> | |||
boxの実体ファイルは、$HOME/.vagrant.d/boxesに存在する。<br> | |||
mv ~/.vagrant.d/boxes/<boxのファイル名> ~/.vagrant.d/boxes/<boxの新しいファイル名> | |||
<br> | |||
次に、<code>vagrant init</code>コマンドを実行して、新しいbox名を指定する。<br> | |||
vagrant init <boxの新しいファイル名> | |||
<br><br> | <br><br> | ||
__FORCETOC__ | __FORCETOC__ | ||
[[カテゴリ: | [[カテゴリ:RHEL]][[カテゴリ:SUSE]] |
2023年10月18日 (水) 17:49時点における最新版
概要
Vagrantfileとは、仮想マシンの構築設定などを記述するためのファイルである。
例えば、"仮想マシンはCeontOS 7をインストールする"、"IPアドレスを192.168.10.10にする"等である。
Vagrantfileは、以下のような特徴がある。
- 仮想マシンの基本設定を記述できる。
- ファイルなので共有が簡単。
- 環境構築手順ファイルを呼び出せる。
- Ruby言語で記述する。
Vagrantのコマンドを実行する時、自動的にVagrantfileが読み込まれて、記述内容にしたがって仮想マシンが構築される仕組みである。
Vagrantfileは一般的なファイルなので、多くのユーザに共有することもできる。
また、仮想マシンの構築後に必要なパッケージをインストールする場合、別ファイルに詳細な手順を記述して、Vagrantfileから呼び出すこともできる。
依存関係のライブラリのインストール
Vagrantの依存関係のライブラリをインストールするため、以下のライブラリをインストールする。
以下のライブラリが無い場合、vagrant box add
コマンドが失敗する可能性がある。
sudo zypper install bsdtar
Vagantのインストール
バイナリファイルからインストール
- まず、Vagrantの公式Webサイトにアクセスして、各プラットフォーム向けのVagrantをダウンロードする。
- Vagrantを以下の手順に従ってインストールする。
- RPMを使用する場合
- ダウンロードしたRPMファイルに対して、以下のコマンドを実行する。
sudo rpm -Uvh vagrant-<バージョン>.x86_64.rpm
- AppImageを使用する場合
- ダウンロードしたファイルを解凍する。
unzip vagrant_<バージョン>_linux_amd64.zip
- 解凍したAppImageファイルのフルパスを、.profileファイル等に環境変数PATHを記述する。
vi ~/.profile
~/.profileファイル
export PATH="<VagrantのAppImageファイルのパス>:$PATH"
- Windows
- ダウンロードしたVagrantのインストーラを起動して、手順にしたがってインストールする。
- RPMを使用する場合
- PCを再起動する。
ソースコードからインストール
ソースコードからVagrantをインストールする場合、公式インストーラが使用できない場合にのみ推奨する。
ソースコードからVagrantをインストールするための前提条件と3つのステップについて以下に示す。
- Rubyをインストールする。
- Vagrantをクローンする。
- ローカルで設定する。
まず、Rubyをインストールする。
Vagrantをビルドするには、特定のバージョンのRubyをインストールする必要がある。
必要なRubyのバージョンは、VagrantのGithubにあるvagrant.gemspecに記載されている。
また、Vagrantをソースコードからインストールする場合は、プラグインの互換性にも注意する必要がある。
Vagrantのプラグインは現在の環境に基づいて設定されるため、ソースコードからVagrantでインストールしたプラグインは、パッケージベースのVagrantインストールでは動作しないことに注意する。
sudo zypper install make gcc ruby rubygem-bundler nodejs libopenssl-devel sqlite3-devel
次に、Vagrantのソースコードをクローンする。
git clone https://github.com/hashicorp/vagrant.git
次に、クローンしたVagrantパスを~/.profileファイル等に環境変数PATHを設定する。
vi ~/.profile
# ~/.profileファイル
export PATH="<Vagrantのパス>:$PATH"
必要なライブラリおよびプラグインをインストールする。
cd <Vagrantのパス> bundle install
bundle
コマンドを実行して、Vagrantを起動する。
bundle exec vagrant
Vagrant VMwareのインストール
Vagrant VMware WorkstationまたはVagrant VMware Fusionプラグインからアップグレードする場合、Vagrantで管理している全てのVMware上の仮想マシンを停止または破棄する。
その後、以下の手順に従う。
Vagrant VMwareプロバイダのインストールには2つのステップが必要である。
まず、Vagrant VMwareユーティリティをインストールする。
これは、Vagrant VMwareユーティリティの公式Webサイトから、RPMファイルをダウンロードしてインストールする。
sudo zypper install ./vagrant-vmware-utility-<バージョン>.x86_64.rpm
次に、Vagrant VMwareプロバイダプラグインを標準のプラグインインストール手順でインストールする。
vagrant plugin install vagrant-vmware-desktop
プラグインのインストールについて詳細を知りたい場合は、Vagrantプラグインの公式Webドキュメントを参照すること。
Vagrant VMware Desktopプラグインをアップデートする場合は、Vagrantから直接アップデートすることができる。
vagrant plugin update vagrant-vmware-desktop
Vagrantの使用方法
Vagrantfileを作成
ターミナルを起動して、以下のコマンドを実行する。
vagrant init
Vagrantfileの設定
Vagrantfileをテキストエディタで開く。
以下に、Vagrantfileの設定例を示す。
以下の例では、CeontOS 7をインストールしているので、config.vm.box = "centos/7"
と記述している。
VAGRANTFILE_API_VERSION = "2" Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.vm.box = "centos/7" config.vm.network :private_network, ip: "192.168.33.10" config.vm.provider "virtualbox" do |vb| vb.name = "training" vb.gui = false vb.memory = "2048" end config.ssh.private_key_path = "<SSHの暗号鍵ファイルのフルパス>" config.ssh.insert_key = false if Object.const_defined? 'VagrantVbguest' config.vbguest.auto_update = false config.vbguest.no_remote = true end end
仮想マシンの作成
boxファイルから仮想マシンを作成する場合、以下のコマンドを実行する。
box名は、Vagrantfileファイルに記述したconfig.vm.box = <box名>
のbox名を入力する。
vagrant box add <box名> <boxファイルのパス>
仮想マシンの起動
上記の手順により、Vagrantを起動する準備が整う。
ターミナルから以下のコマンドを実行して、仮想マシンを作成する。
vagrant up
vagrant up
は、Vagrantfileの内容にしたがって仮想マシンを構築して起動する。
この時、バックグラウンドではVirturalBoxが起動して、仮想マシンの作成が開始する。
vagrant up
は、実行するタイミングにより動作が変化するので注意すること。
初回は、仮想マシンの構築と起動を行うが、2回目以降は仮想マシンの起動のみとなる。
ただし、2回目以降もVagrantfileが読み込まれていることは覚えておくこと。
- 仮想マシンを構築して起動(初回のみ)
- 仮想マシンを起動(2回目以降)
仮想マシンにログイン
仮想マシンの起動後、以下のコマンドを実行して、仮想マシンにログインする。
vagrant ssh
これにより、仮想マシンにおいて、vagrantユーザでログインできる。
また、vagrantユーザは標準で作成される。
仮想マシンからログアウト
仮想マシンからログアウトする場合は、[Ctrl] + [d]キーを同時押下、または、以下のコマンドを実行する。
exit
仮想マシンの停止
仮想マシンを停止する場合は、以下のコマンドを実行する。
vagrant halt
仮想マシンの削除
仮想マシンを削除する場合は、以下のコマンドを実行する。
vagrant box remove -f <box名> または vagrant destroy または vagrant destroy <box名>
vagrant destroy
コマンドを実行しても、.vagrantディレクトリやVagrantfileファイルは残る。
この設定ファイルには、以前、vagrant box addしたbox情報が記述されている。
vagrant destroy
コマンドは、仮想マシンを削除する以外にも、仮想マシンを再作成する場合にも使用する。
box名の変更
boxの実体ファイルをリネームするだけでbox名を変更することができる。
boxの実体ファイルは、$HOME/.vagrant.d/boxesに存在する。
mv ~/.vagrant.d/boxes/<boxのファイル名> ~/.vagrant.d/boxes/<boxの新しいファイル名>
次に、vagrant init
コマンドを実行して、新しいbox名を指定する。
vagrant init <boxの新しいファイル名>