「インストール - Vagrant」の版間の差分

提供:MochiuWiki - SUSE, Electronic Circuit, PCB
ナビゲーションに移動 検索に移動
 
(同じ利用者による、間の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>
# Vagrantをインストールする。
#: <br>
#* CentOS
# Vagrantを以下の手順に従ってインストールする。
#* RPMを使用する場合
#*: ダウンロードしたRPMファイルに対して、以下のコマンドを実行する。
#*: ダウンロードしたRPMファイルに対して、以下のコマンドを実行する。
#*: <code>sudo rpm -Uvh vagrant_<バージョン名>.rpm</code>
#*: <code>sudo rpm -Uvh vagrant-<バージョン>.x86_64.rpm</code>
#* SUSE
#*: <br>
#*: ダウンロードしたAppImageファイルのフルパスを、.profileファイル等に環境変数PATHを記述する。
#* AppImageを使用する場合
#*: 以下の設定例では、~/InstallSoftware/VagrantディレクトリにVagrantのAppImageファイルを配置している。
#*: ダウンロードしたファイルを解凍する。
#*: <code>echo 'export PATH="$HOME/InstallSoftware/Vagrant:$PATH' >> ~/.profile</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>
<coe>vagrant destroy</code>コマンドを実行しても、.vagrantディレクトリやVagrantfileファイルは残る。<br>
<code>vagrant destroy</code>コマンドを実行しても、.vagrantディレクトリやVagrantfileファイルは残る。<br>
この設定ファイルには、以前、vagrant box addしたbox情報が記述されている。<br>
この設定ファイルには、以前、vagrant box addしたbox情報が記述されている。<br>
<br>
<br>
<coe>vagrant destroy</code>コマンドは、仮想マシンを削除する以外にも、仮想マシンを再作成する場合にも使用する。<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__
[[カテゴリ:CentOS]][[カテゴリ:SUSE]]
[[カテゴリ: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のインストール

バイナリファイルからインストール

  1. まず、Vagrantの公式Webサイトにアクセスして、各プラットフォーム向けのVagrantをダウンロードする。

  2. 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のインストーラを起動して、手順にしたがってインストールする。

  3. PCを再起動する。


ソースコードからインストール

ソースコードからVagrantをインストールする場合、公式インストーラが使用できない場合にのみ推奨する。

ソースコードからVagrantをインストールするための前提条件と3つのステップについて以下に示す。

  1. Rubyをインストールする。
  2. Vagrantをクローンする。
  3. ローカルで設定する。


まず、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の新しいファイル名>