はじめに
作成した仮想環境を配布できる状態にしてみましょう。
boxを作っておけば、やり直しも楽です。
使用ツール
- Windows10
- Windowd PowerShell(コマンドプロンプトでも可)
手順
1. VirtualBoxインストール
2. Vagrantインストール
3. Vagrantfileを設置
4. 仮想マシンの操作
5. Tera Termに接続
6. WinSCPに接続
7. vagrantユーザーをrootに切り替え
8. パスワード設定
9. SSH接続許可(rootユーザー)
10. zip/unzipをインストール
11. Vagrantにて仮想環境を配布
やってみよう
11. Vagrantにて仮想環境を配布
仮想環境を配布
centos7フォルダでPowerShellを起動し、
以下のコマンドを実行すると、centos7.box というファイル名で、centos7フォルダに出力されます。
vagrant package --output centos7.box
仮想環境をインポート
ここで作成したboxファイルを使用して、新しい仮想環境を作ってみましょう。
以前centos7フォルダでvagrant init
を実行したときのように、
新しいフォルダを準備して、作成したcentos7.boxをそこにコピーし、PowerShellを起動します。
起動したPowerShellで以下のコマンドを実行します。
これでbox一覧に、new_envというboxが追加されます。
vagrant box add new_env centos7.box
box一覧に、追加されているか確認するには以下のコマンドを使用します。
vagrant box list
box一覧に追加が確認されたら、box名を指定してvagrant init
を実行します。
vagrant init new_env
Vagrantfileを編集して、vagrant up
してみましょう。
前回とはconfig.vm.box、IPアドレスとvb.nameだけ変えました。
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "new_env"
config.vm.network :private_network, ip: "192.168.33.20"
config.vm.provider "virtualbox" do |vb|
vb.name = "new_env"
vb.gui = false
vb.memory = "4096"
end
config.ssh.private_key_path = "c:/Users/user_name/.vagrant.d/insecure_private_key"
config.ssh.insert_key = false
if Object.const_defined? 'VagrantVbguest'
config.vbguest.auto_update = false
config.vbguest.no_remote = true
end
end
これで仮想環境をインポートして起動することができました。
上の画像でポート番号が2222となっていますが、
現在centos7ボックスの仮想環境はシャットダウン中なので、自動で2222が割り振られたようです。
不要な仮想環境をboxリストから削除する
使用しなくなった環境をboxリストから削除したいときは、
vagrant box list
コマンドで使用していないboxの名前を確認し、
以下のコマンドで削除できます。
vagrant box remove box名
次調べたいこと
仮想環境のポート番号は指定できないのか?というところを調べたいです。
参考サイト
Vagrantで、仮想環境を配布するようなシチュエーションのお話
使ってないVagrant Boxを削除する
関連ページ
Windows10にVagrantをを入れてCentOS7をインストールしよう
1. VagrantインストールからVagrantfileを設置まで
2. 仮想マシンの操作
3. WinSCP、Tera Termに秘密鍵でログイン
4. WinSCP、Tera Termにrootユーザーでパスワードログイン
5. zip/unzipをインストール
6.Vagrantにて仮想環境を配布