!!!Vagrant {{amazon B00F418SQ8}} *[DB2 Express-C 11.1 をVagrant上のCentOs7にインストール|http://typea.info/blg/glob/2018/08/db2-express-c-111-vagrantcentos7.html] !!基本 !Boxカタログ *https://app.vagrantup.com/boxes/search !初期化 *Vagrantfileが生成される $ vagrant init centos/7 A `Vagrantfile` has been placed in this directory. You are now ready to `vagrant up` your first virtual environment! Please read the comments in the Vagrantfile as well as documentation on `vagrantup.com` for more information on using Vagrant. !起動 *初回はイメージのダウンロードが発生 $ vagrant up *Hyper-v で起動 **Poershell を管理者で実行 PS> vagrant up --provider=hyperv *以下のエラーの場合のトラブルシュート *http://typea.info/blg/glob/2018/06/windows10-pro-hyper-v-vagrant-211-switchid.html \import_vm_xml.ps1 : パラメーター名 'switchid' に一致するパラメーターが見つかりません。発生場所 行:1 文字:327 + ... achines/default/hyperv/Virtual Hard Disks/disk.vhd' -switchid 'c08cb7 ... + ~~~~~~~~~ + CategoryInfo : InvalidArgument: (:) [import_vm_xml.ps1]、ParameterBindingException + FullyQualifiedErrorId : NamedParameterNotFound,import_vm_xml.ps1 ::起動時のパラメータ(--provider=hyperv)をVagrantfileに記述 config.vm.provider "hyperv" do |vb| # Customize the amount of memory on the VM: vb.memory = "1024" end !ssh接続 $ vagrant ssh !net work *ネットワークを公開 *Vagrantfile config.vm.network :public_network !シャットダウン $ vagrant halt !休止 $ vagrant suspend !ステータス確認 $ vagrant status !破棄 $ vagrant destory !ホストとのディレクトリ共有 *最初の引数がホストのディレクトリ、2つ目がゲスト config.vm.synced_folder "../vagrantdata", "/vagrant_data" !スナップショット *スナップショットをとる vagrant snapshot save {スナップショット名} *確認 vagrant snapshot list *リストア vagrant snapshot restore {スナップショット名} *削除 vagrant snapshot delete {スナップショット名} ""名前を付けずに一時保存の場合、push と pop が利用できる !!プロビジョニング !GNOME GUI *https://mseeeen.msen.jp/centos7-gnome-desktop-with-vagrant/ config.vm.provider "virtualbox" do |vb| # Display the VirtualBox GUI when booting the machine vb.gui = true # Customize the amount of memory on the VM: vb.memory = "2048" end config.vm.provision "shell", inline: <<-SHELL sudo yum -y groupinstall "GNOME Desktop" sudo yum -y install epel-release sudo systemctl set-default graphical.target systemctl get-default sudo shutdown -r now SHELL !!作成した環境をコピー !配布パッケージの作成 *http://vdeep.net/vagrant-package > vagrant package [vm名] --output [名前.box] *例 >vagrant package default --output centos7db2.box !作成したパッケージの取り込み >vagrant box add centos7db2 centos7db2.box !Boxを確認 >vagrant box list centos/7 (hyperv, 1804.02) centos7db2 (virtualbox, 0) !Boxを利用可能に >vagrant init centos7db2 !Boxを削除 >vagrant box remove centos7db2 !!Tips !proxy ::Vagrant自体に設定するには、環境変数に以下を設定 *http_proxy *https_proxy ::ゲストOSにプロキシーを適用するには、上記設定をした上で以下のプラグインを導入 *https://qiita.com/kota344@github/items/304979feaf965afffb1a > vagrant plugin install vagrant-proxyconf *Vagrantfileに追記 if Vagrant.has_plugin?("vagrant-proxyconf") && ENV['http_proxy'] puts '- Proxy Setting ----------------------------------' puts ENV['http_proxy'] config.proxy.http = "http://" + ENV['http_proxy'] config.proxy.https = "https://" + ENV['http_proxy'] config.proxy.no_proxy = "localhost,127.0.0.1" puts '--------------------------------------------------' end