SlideShare une entreprise Scribd logo
1  sur  19
vagrant
vagrantとは
仮想マシンを動かすラッパーツール
仮想マシンは選択可能
- VirtualBox
- VMware
- Amazon EC2
用語
プロバイダ
- 仮想環境のこと、VirtualBoxなど
Vagrantfile
- 仮想マシンの構成を記述する
- Rubyベース
- 基本的に、本ファイルがあればどこでも同じ環境を再現できる
用語
プロビジョニング
- vagrant upをした後に実行される一連の処理のこと
- シェルスクリプト、Chef(chef-solo, chef-client)、Puppetなどが使えます
Boxファイル
- 仮想マシン起動の際にベースとなるテンプレートファイル
- ISOファイルではありません
- 仮想環境別に必要、通常はOSイメージから作成する
- Vagrant利用の上で最低限必要な設定(ユーザの作成、sshdの起動、プロビジョニング
ツールのインストール)のみを行っておく
vagrant up
1. 必要なツールをインストールする
https://www.vagrantup.com/
https://www.virtualbox.org/
2. vagrant box を取得する
http://www.vagrantbox.es/
vagrant box add [url]
3. 仮想マシンの初期化
vagrant init [box-name]
4. 仮想マシンの立ち上げ
vagrant up
vagrant file
vagrant init
Vagrant.configure(2) do |config|
config.vm.box = "base"
# config.vm.box_check_update = false
# Create a forwarded port mapping
# config.vm.network "forwarded_port", guest: 80, host: 8080
# Create a private network
# config.vm.network "private_network", ip: "192.168.33.10"
# Create a public network, which generally matched to bridged network.
# config.vm.network "public_network"
# Share an additional folder to the guest VM.
# config.vm.synced_folder "../data", "/vagrant_data"
# 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 = "1024"
# end
# config.vm.provision "shell", inline: <<-SHELL
# sudo apt-get update
# sudo apt-get install -y apache2
# SHELL
end
vagrant file
network
Vagrant.configure(2) do |config|
config.vm.box = "base"
# config.vm.box_check_update = false
# Create a forwarded port mapping
# config.vm.network "forwarded_port", guest: 80, host: 8080
# Create a private network
# config.vm.network "private_network", ip: "192.168.33.10"
# Create a public network, which generally matched to bridged network.
# config.vm.network "public_network"
# Share an additional folder to the guest VM.
# config.vm.synced_folder "../data", "/vagrant_data"
# 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 = "1024"
# end
# config.vm.provision "shell", inline: <<-SHELL
# sudo apt-get update
# sudo apt-get install -y apache2
# SHELL
end
vagrant file
provisioning
Vagrant.configure(2) do |config|
config.vm.box = "base"
# config.vm.box_check_update = false
# Create a forwarded port mapping
# config.vm.network "forwarded_port", guest: 80, host: 8080
# Create a private network
# config.vm.network "private_network", ip: "192.168.33.10"
# Create a public network, which generally matched to bridged network.
# config.vm.network "public_network"
# Share an additional folder to the guest VM.
# config.vm.synced_folder "../data", "/vagrant_data"
# 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 = "1024"
# end
# config.vm.provision "shell", inline: <<-SHELL
# sudo apt-get update
# sudo apt-get install -y apache2
# SHELL
end
vagrant コマンド
vagrant box add [box-name] [box-url]
vagrant box list
Vagrant box remove [box-name]
vagrant up 立ち上げ
vagrant halt 停止、シャットダウン
vagrant suspend 中断
vagrant resume 復帰
vagrant destroy 仮想マシン削除(Boxの削除ではない)
vagrant コマンド
vagrant reload 設定変更(vagrant file)を反映する、ネットワークの構成変更等
vagarnt provision プロビジョンを実行する(vagrant upした後でも可能)
共有フォルダ
デフォルトで 以下は共有フォルダになっています
- host OS の vagrant fileを置いてあるフォルダ
- guest os の /vagrant
※virtualbox guest additions
共有フォルダ
config.vm.synced_folder “host_path”, “guest_path”, type: “nfs”
type
- virtualbox(Windows/Mac/Linux)
- NFS(Mac/Linux)
- rsync(Windows/Mac/Linux)
- SMB(Windows)
共有フォルダ
config.vm.synced_folder “host_path”, “guest_path”, type: “nfs”
type
- virtualbox(Windows/Mac/Linux) 遅い
- NFS(Mac/Linux) それなりに高速
- rsync(Windows/Mac/Linux) ホスト OS 側から仮想環境への一方向だけの同期
- SMB(Windows)
ss-vagrant
https://github.com/shirasagi/ss-vagrant
VirtualBox + CentOS + Shirasagi
- 自治体サンプル
- 企業サンプル
ss-vagrant
Vagrant.configure(2) do |config|
config.vm.box = "ss-vagrant-v1.2.0"
config.vm.box_url = https://github.com/shirasagi/ss-vagrant/releases/download/v1.2.0/ss-vagrant-virtualbox-
x86_64.box
config.vm.network :forwarded_port, guest: 3000, host: 3000
config.vm.network "private_network", ip: "192.168.33.10“
config.vm.provider :virtualbox do |vb|
# IPv6 と DNS でのネットワーク遅延対策で追記
vb.customize ["modifyvm", :id, "--natdnsproxy1", "off"]
vb.customize ["modifyvm", :id, "--natdnshostresolver1", "off"]
end
end
windowsでの簡単な立ち上げ方(オフライン)
1. VirtualBoxをインストール
2. vagrantをインストール
3. sshクライアントをインストール
4. VagrantFile と ss-vagrant-virtualbox-x86_64.box を用意
5. フォルダー C:vagrant を作成します
6. VagrantFile と ss-vagrant-virtualbox-x86_64.box を作成したフォルダーにコピーします
7. コマンドプロンプトを立ち上げて以下のコマンドを実行します
> cd C:vagrant
> vagrant box add ss ss-vagrant-virtualbox-x86_64.box
> vagrant up
windowsでの簡単な立ち上げ方(オフライン)
8. ssh で仮想環境にログイン
9. シラサギを起動
$ cd $HOME/shirasagi
$ bundle exec rake unicorn:start
10. ブラウザから確認
自治体サンプル http://localhost:3000/
企業サンプル http://192.168.33.10:3000/
管理画面 http://localhost:3000/.mypage
Vagrant Box build
仮想環境上で vagrant package
packer を使う
- https://www.packer.io/downloads.html
- template.jsonを元にBoxを作成
packer build [template.json]
- centos用テンプレート: https://github.com/boxcutter/centos
Vagrant plugin
vagrant plugin install [plugin-name]
sahara
- サンドボックスモードを有効にするプラグイン
- ロールバック機能で実行前の状態に戻すことができます
vagrant-hostmanager
- HOST名の書き換え(host OS含む)

Contenu connexe

Tendances

WSL2+docker+JupyterとVS Codeリモート環境の構築
WSL2+docker+JupyterとVS Codeリモート環境の構築WSL2+docker+JupyterとVS Codeリモート環境の構築
WSL2+docker+JupyterとVS Codeリモート環境の構築Saito5656
 
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料zgock
 
2014/11/08 第3回 一撃サーバー構築シェルスクリプト勉強会(懇親会もあるよ!) 発表資料
2014/11/08 第3回 一撃サーバー構築シェルスクリプト勉強会(懇親会もあるよ!) 発表資料2014/11/08 第3回 一撃サーバー構築シェルスクリプト勉強会(懇親会もあるよ!) 発表資料
2014/11/08 第3回 一撃サーバー構築シェルスクリプト勉強会(懇親会もあるよ!) 発表資料Yasutaka Hamada
 
Wocker 秒速で WordPress 開発環境を構築する
Wocker 秒速で WordPress 開発環境を構築するWocker 秒速で WordPress 開発環境を構築する
Wocker 秒速で WordPress 開発環境を構築するKite Koga
 
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)tokuhy
 
第1回 一撃サーバー構築シェルスクリプト勉強会
第1回 一撃サーバー構築シェルスクリプト勉強会第1回 一撃サーバー構築シェルスクリプト勉強会
第1回 一撃サーバー構築シェルスクリプト勉強会Yasutaka Hamada
 
Docker+CoreOS+GCEで自動スケール分散レイトレ
Docker+CoreOS+GCEで自動スケール分散レイトレDocker+CoreOS+GCEで自動スケール分散レイトレ
Docker+CoreOS+GCEで自動スケール分散レイトレperyaudo
 
Casperjsのインストール
CasperjsのインストールCasperjsのインストール
CasperjsのインストールKohei Misu
 
UEFI時代のブートローダ
UEFI時代のブートローダUEFI時代のブートローダ
UEFI時代のブートローダTakuya ASADA
 
軽快なPlan 9 Update - Illumos KVM上陸 -
軽快なPlan 9 Update - Illumos KVM上陸 -軽快なPlan 9 Update - Illumos KVM上陸 -
軽快なPlan 9 Update - Illumos KVM上陸 -Go Saito
 
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Ansible 2.0を使って組む kubernetesクラスタ vol.1Ansible 2.0を使って組む kubernetesクラスタ vol.1
Ansible 2.0を使って組む kubernetesクラスタ vol.1Hidetoshi Hirokawa
 
ChefとPuppetの比較
ChefとPuppetの比較ChefとPuppetの比較
ChefとPuppetの比較Sugawara Genki
 
FreeBSD VPSでLive Migration
FreeBSD VPSでLive MigrationFreeBSD VPSでLive Migration
FreeBSD VPSでLive Migrationspg_games
 
こんてなぐらし!〜FreeBSD VPSでライブマイグレーション〜
こんてなぐらし!〜FreeBSD VPSでライブマイグレーション〜こんてなぐらし!〜FreeBSD VPSでライブマイグレーション〜
こんてなぐらし!〜FreeBSD VPSでライブマイグレーション〜furandon_pig
 
Okinawa Open Days 2015 Handson - Ansible
Okinawa Open Days 2015 Handson - AnsibleOkinawa Open Days 2015 Handson - Ansible
Okinawa Open Days 2015 Handson - AnsibleHideki Saito
 
COMSTARでiSCSI - OpenSolaris勉強会 2011.08
COMSTARでiSCSI - OpenSolaris勉強会 2011.08COMSTARでiSCSI - OpenSolaris勉強会 2011.08
COMSTARでiSCSI - OpenSolaris勉強会 2011.08tokuhy
 
AWSのRedHatにMySQL最速インストール
AWSのRedHatにMySQL最速インストールAWSのRedHatにMySQL最速インストール
AWSのRedHatにMySQL最速インストールsakaik
 

Tendances (20)

Lxc on cloud
Lxc on cloudLxc on cloud
Lxc on cloud
 
WSL2+docker+JupyterとVS Codeリモート環境の構築
WSL2+docker+JupyterとVS Codeリモート環境の構築WSL2+docker+JupyterとVS Codeリモート環境の構築
WSL2+docker+JupyterとVS Codeリモート環境の構築
 
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
openSUSEで最強仮想環境をつくろう - ゲーミングから仮想通貨まで - OSC名古屋2017セミナー資料
 
PowerShell de Azure
PowerShell de AzurePowerShell de Azure
PowerShell de Azure
 
2014/11/08 第3回 一撃サーバー構築シェルスクリプト勉強会(懇親会もあるよ!) 発表資料
2014/11/08 第3回 一撃サーバー構築シェルスクリプト勉強会(懇親会もあるよ!) 発表資料2014/11/08 第3回 一撃サーバー構築シェルスクリプト勉強会(懇親会もあるよ!) 発表資料
2014/11/08 第3回 一撃サーバー構築シェルスクリプト勉強会(懇親会もあるよ!) 発表資料
 
Wocker 秒速で WordPress 開発環境を構築する
Wocker 秒速で WordPress 開発環境を構築するWocker 秒速で WordPress 開発環境を構築する
Wocker 秒速で WordPress 開発環境を構築する
 
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
 
第1回 一撃サーバー構築シェルスクリプト勉強会
第1回 一撃サーバー構築シェルスクリプト勉強会第1回 一撃サーバー構築シェルスクリプト勉強会
第1回 一撃サーバー構築シェルスクリプト勉強会
 
Puppet on AWS
Puppet on AWSPuppet on AWS
Puppet on AWS
 
Docker+CoreOS+GCEで自動スケール分散レイトレ
Docker+CoreOS+GCEで自動スケール分散レイトレDocker+CoreOS+GCEで自動スケール分散レイトレ
Docker+CoreOS+GCEで自動スケール分散レイトレ
 
Casperjsのインストール
CasperjsのインストールCasperjsのインストール
Casperjsのインストール
 
UEFI時代のブートローダ
UEFI時代のブートローダUEFI時代のブートローダ
UEFI時代のブートローダ
 
軽快なPlan 9 Update - Illumos KVM上陸 -
軽快なPlan 9 Update - Illumos KVM上陸 -軽快なPlan 9 Update - Illumos KVM上陸 -
軽快なPlan 9 Update - Illumos KVM上陸 -
 
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Ansible 2.0を使って組む kubernetesクラスタ vol.1Ansible 2.0を使って組む kubernetesクラスタ vol.1
Ansible 2.0を使って組む kubernetesクラスタ vol.1
 
ChefとPuppetの比較
ChefとPuppetの比較ChefとPuppetの比較
ChefとPuppetの比較
 
FreeBSD VPSでLive Migration
FreeBSD VPSでLive MigrationFreeBSD VPSでLive Migration
FreeBSD VPSでLive Migration
 
こんてなぐらし!〜FreeBSD VPSでライブマイグレーション〜
こんてなぐらし!〜FreeBSD VPSでライブマイグレーション〜こんてなぐらし!〜FreeBSD VPSでライブマイグレーション〜
こんてなぐらし!〜FreeBSD VPSでライブマイグレーション〜
 
Okinawa Open Days 2015 Handson - Ansible
Okinawa Open Days 2015 Handson - AnsibleOkinawa Open Days 2015 Handson - Ansible
Okinawa Open Days 2015 Handson - Ansible
 
COMSTARでiSCSI - OpenSolaris勉強会 2011.08
COMSTARでiSCSI - OpenSolaris勉強会 2011.08COMSTARでiSCSI - OpenSolaris勉強会 2011.08
COMSTARでiSCSI - OpenSolaris勉強会 2011.08
 
AWSのRedHatにMySQL最速インストール
AWSのRedHatにMySQL最速インストールAWSのRedHatにMySQL最速インストール
AWSのRedHatにMySQL最速インストール
 

Similaire à 勉強会0614 vagrant

ソフトウェア工学2023 06 コンテナ仮想化
ソフトウェア工学2023 06 コンテナ仮想化ソフトウェア工学2023 06 コンテナ仮想化
ソフトウェア工学2023 06 コンテナ仮想化Toru Tamaki
 
Vagrant入門以前
Vagrant入門以前Vagrant入門以前
Vagrant入門以前katanyan
 
Wakame Project - 自作クラウド研究会
Wakame Project - 自作クラウド研究会Wakame Project - 自作クラウド研究会
Wakame Project - 自作クラウド研究会axsh co., LTD.
 
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1Kotaro Noyama
 
Dockerでらくらく開発・運用を体感しよう
Dockerでらくらく開発・運用を体感しようDockerでらくらく開発・運用を体感しよう
Dockerでらくらく開発・運用を体感しようTakashi Makino
 
ラズパイ2で動く Docker PaaSを作ってみたよ
ラズパイ2で動く Docker PaaSを作ってみたよラズパイ2で動く Docker PaaSを作ってみたよ
ラズパイ2で動く Docker PaaSを作ってみたよnpsg
 
Dockerでlamp環境を作って見る
Dockerでlamp環境を作って見るDockerでlamp環境を作って見る
Dockerでlamp環境を作って見るzhengen lin
 
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境Masashi Shinbara
 
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)Daisuke Ikeda
 
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefnpsg
 
社内勉強会資料(Varnish Module)
社内勉強会資料(Varnish Module)社内勉強会資料(Varnish Module)
社内勉強会資料(Varnish Module)Iwana Chan
 
Docker講習会資料
Docker講習会資料Docker講習会資料
Docker講習会資料teruyaono1
 

Similaire à 勉強会0614 vagrant (20)

Hadoop on LXC
Hadoop on LXCHadoop on LXC
Hadoop on LXC
 
Docker on Vagrant
Docker on VagrantDocker on Vagrant
Docker on Vagrant
 
hbstudy37 doc
hbstudy37 dochbstudy37 doc
hbstudy37 doc
 
ソフトウェア工学2023 06 コンテナ仮想化
ソフトウェア工学2023 06 コンテナ仮想化ソフトウェア工学2023 06 コンテナ仮想化
ソフトウェア工学2023 06 コンテナ仮想化
 
Vagrant入門以前
Vagrant入門以前Vagrant入門以前
Vagrant入門以前
 
Dockerの導入
Dockerの導入Dockerの導入
Dockerの導入
 
Hbstudy41 auto scaling
Hbstudy41 auto scalingHbstudy41 auto scaling
Hbstudy41 auto scaling
 
Wakame Project - 自作クラウド研究会
Wakame Project - 自作クラウド研究会Wakame Project - 自作クラウド研究会
Wakame Project - 自作クラウド研究会
 
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1
 
Dockerでらくらく開発・運用を体感しよう
Dockerでらくらく開発・運用を体感しようDockerでらくらく開発・運用を体感しよう
Dockerでらくらく開発・運用を体感しよう
 
ラズパイ2で動く Docker PaaSを作ってみたよ
ラズパイ2で動く Docker PaaSを作ってみたよラズパイ2で動く Docker PaaSを作ってみたよ
ラズパイ2で動く Docker PaaSを作ってみたよ
 
Vagrant+Chef
Vagrant+ChefVagrant+Chef
Vagrant+Chef
 
Docker超入門
Docker超入門Docker超入門
Docker超入門
 
Dockerでlamp環境を作って見る
Dockerでlamp環境を作って見るDockerでlamp環境を作って見る
Dockerでlamp環境を作って見る
 
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
 
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
 
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
 
Vagrant on SoftLayer
Vagrant on SoftLayerVagrant on SoftLayer
Vagrant on SoftLayer
 
社内勉強会資料(Varnish Module)
社内勉強会資料(Varnish Module)社内勉強会資料(Varnish Module)
社内勉強会資料(Varnish Module)
 
Docker講習会資料
Docker講習会資料Docker講習会資料
Docker講習会資料
 

Plus de Yu Ito

Kof2017 シラサギ導入
Kof2017 シラサギ導入Kof2017 シラサギ導入
Kof2017 シラサギ導入Yu Ito
 
ウェブチップス勉強会 Action cable
ウェブチップス勉強会 Action cableウェブチップス勉強会 Action cable
ウェブチップス勉強会 Action cableYu Ito
 
シラサギハンズオン 2016 05-26
シラサギハンズオン 2016 05-26シラサギハンズオン 2016 05-26
シラサギハンズオン 2016 05-26Yu Ito
 
シラサギハンズオン 1015 1016
シラサギハンズオン 1015 1016シラサギハンズオン 1015 1016
シラサギハンズオン 1015 1016Yu Ito
 
徳島OSS勉強会第四回 シラサギハンズオン 0925
徳島OSS勉強会第四回 シラサギハンズオン 0925徳島OSS勉強会第四回 シラサギハンズオン 0925
徳島OSS勉強会第四回 シラサギハンズオン 0925Yu Ito
 
シラサギハンズオン 東京
シラサギハンズオン 東京シラサギハンズオン 東京
シラサギハンズオン 東京Yu Ito
 
シラサギハンズオン 大阪
シラサギハンズオン 大阪シラサギハンズオン 大阪
シラサギハンズオン 大阪Yu Ito
 
シラサギハンズオン 松江
シラサギハンズオン 松江シラサギハンズオン 松江
シラサギハンズオン 松江Yu Ito
 

Plus de Yu Ito (8)

Kof2017 シラサギ導入
Kof2017 シラサギ導入Kof2017 シラサギ導入
Kof2017 シラサギ導入
 
ウェブチップス勉強会 Action cable
ウェブチップス勉強会 Action cableウェブチップス勉強会 Action cable
ウェブチップス勉強会 Action cable
 
シラサギハンズオン 2016 05-26
シラサギハンズオン 2016 05-26シラサギハンズオン 2016 05-26
シラサギハンズオン 2016 05-26
 
シラサギハンズオン 1015 1016
シラサギハンズオン 1015 1016シラサギハンズオン 1015 1016
シラサギハンズオン 1015 1016
 
徳島OSS勉強会第四回 シラサギハンズオン 0925
徳島OSS勉強会第四回 シラサギハンズオン 0925徳島OSS勉強会第四回 シラサギハンズオン 0925
徳島OSS勉強会第四回 シラサギハンズオン 0925
 
シラサギハンズオン 東京
シラサギハンズオン 東京シラサギハンズオン 東京
シラサギハンズオン 東京
 
シラサギハンズオン 大阪
シラサギハンズオン 大阪シラサギハンズオン 大阪
シラサギハンズオン 大阪
 
シラサギハンズオン 松江
シラサギハンズオン 松江シラサギハンズオン 松江
シラサギハンズオン 松江
 

Dernier

論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 

Dernier (10)

論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

勉強会0614 vagrant

  • 3. 用語 プロバイダ - 仮想環境のこと、VirtualBoxなど Vagrantfile - 仮想マシンの構成を記述する - Rubyベース - 基本的に、本ファイルがあればどこでも同じ環境を再現できる
  • 4. 用語 プロビジョニング - vagrant upをした後に実行される一連の処理のこと - シェルスクリプト、Chef(chef-solo, chef-client)、Puppetなどが使えます Boxファイル - 仮想マシン起動の際にベースとなるテンプレートファイル - ISOファイルではありません - 仮想環境別に必要、通常はOSイメージから作成する - Vagrant利用の上で最低限必要な設定(ユーザの作成、sshdの起動、プロビジョニング ツールのインストール)のみを行っておく
  • 5. vagrant up 1. 必要なツールをインストールする https://www.vagrantup.com/ https://www.virtualbox.org/ 2. vagrant box を取得する http://www.vagrantbox.es/ vagrant box add [url] 3. 仮想マシンの初期化 vagrant init [box-name] 4. 仮想マシンの立ち上げ vagrant up
  • 6. vagrant file vagrant init Vagrant.configure(2) do |config| config.vm.box = "base" # config.vm.box_check_update = false # Create a forwarded port mapping # config.vm.network "forwarded_port", guest: 80, host: 8080 # Create a private network # config.vm.network "private_network", ip: "192.168.33.10" # Create a public network, which generally matched to bridged network. # config.vm.network "public_network" # Share an additional folder to the guest VM. # config.vm.synced_folder "../data", "/vagrant_data" # 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 = "1024" # end # config.vm.provision "shell", inline: <<-SHELL # sudo apt-get update # sudo apt-get install -y apache2 # SHELL end
  • 7. vagrant file network Vagrant.configure(2) do |config| config.vm.box = "base" # config.vm.box_check_update = false # Create a forwarded port mapping # config.vm.network "forwarded_port", guest: 80, host: 8080 # Create a private network # config.vm.network "private_network", ip: "192.168.33.10" # Create a public network, which generally matched to bridged network. # config.vm.network "public_network" # Share an additional folder to the guest VM. # config.vm.synced_folder "../data", "/vagrant_data" # 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 = "1024" # end # config.vm.provision "shell", inline: <<-SHELL # sudo apt-get update # sudo apt-get install -y apache2 # SHELL end
  • 8. vagrant file provisioning Vagrant.configure(2) do |config| config.vm.box = "base" # config.vm.box_check_update = false # Create a forwarded port mapping # config.vm.network "forwarded_port", guest: 80, host: 8080 # Create a private network # config.vm.network "private_network", ip: "192.168.33.10" # Create a public network, which generally matched to bridged network. # config.vm.network "public_network" # Share an additional folder to the guest VM. # config.vm.synced_folder "../data", "/vagrant_data" # 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 = "1024" # end # config.vm.provision "shell", inline: <<-SHELL # sudo apt-get update # sudo apt-get install -y apache2 # SHELL end
  • 9. vagrant コマンド vagrant box add [box-name] [box-url] vagrant box list Vagrant box remove [box-name] vagrant up 立ち上げ vagrant halt 停止、シャットダウン vagrant suspend 中断 vagrant resume 復帰 vagrant destroy 仮想マシン削除(Boxの削除ではない)
  • 10. vagrant コマンド vagrant reload 設定変更(vagrant file)を反映する、ネットワークの構成変更等 vagarnt provision プロビジョンを実行する(vagrant upした後でも可能)
  • 11. 共有フォルダ デフォルトで 以下は共有フォルダになっています - host OS の vagrant fileを置いてあるフォルダ - guest os の /vagrant ※virtualbox guest additions
  • 12. 共有フォルダ config.vm.synced_folder “host_path”, “guest_path”, type: “nfs” type - virtualbox(Windows/Mac/Linux) - NFS(Mac/Linux) - rsync(Windows/Mac/Linux) - SMB(Windows)
  • 13. 共有フォルダ config.vm.synced_folder “host_path”, “guest_path”, type: “nfs” type - virtualbox(Windows/Mac/Linux) 遅い - NFS(Mac/Linux) それなりに高速 - rsync(Windows/Mac/Linux) ホスト OS 側から仮想環境への一方向だけの同期 - SMB(Windows)
  • 14. ss-vagrant https://github.com/shirasagi/ss-vagrant VirtualBox + CentOS + Shirasagi - 自治体サンプル - 企業サンプル
  • 15. ss-vagrant Vagrant.configure(2) do |config| config.vm.box = "ss-vagrant-v1.2.0" config.vm.box_url = https://github.com/shirasagi/ss-vagrant/releases/download/v1.2.0/ss-vagrant-virtualbox- x86_64.box config.vm.network :forwarded_port, guest: 3000, host: 3000 config.vm.network "private_network", ip: "192.168.33.10“ config.vm.provider :virtualbox do |vb| # IPv6 と DNS でのネットワーク遅延対策で追記 vb.customize ["modifyvm", :id, "--natdnsproxy1", "off"] vb.customize ["modifyvm", :id, "--natdnshostresolver1", "off"] end end
  • 16. windowsでの簡単な立ち上げ方(オフライン) 1. VirtualBoxをインストール 2. vagrantをインストール 3. sshクライアントをインストール 4. VagrantFile と ss-vagrant-virtualbox-x86_64.box を用意 5. フォルダー C:vagrant を作成します 6. VagrantFile と ss-vagrant-virtualbox-x86_64.box を作成したフォルダーにコピーします 7. コマンドプロンプトを立ち上げて以下のコマンドを実行します > cd C:vagrant > vagrant box add ss ss-vagrant-virtualbox-x86_64.box > vagrant up
  • 17. windowsでの簡単な立ち上げ方(オフライン) 8. ssh で仮想環境にログイン 9. シラサギを起動 $ cd $HOME/shirasagi $ bundle exec rake unicorn:start 10. ブラウザから確認 自治体サンプル http://localhost:3000/ 企業サンプル http://192.168.33.10:3000/ 管理画面 http://localhost:3000/.mypage
  • 18. Vagrant Box build 仮想環境上で vagrant package packer を使う - https://www.packer.io/downloads.html - template.jsonを元にBoxを作成 packer build [template.json] - centos用テンプレート: https://github.com/boxcutter/centos
  • 19. Vagrant plugin vagrant plugin install [plugin-name] sahara - サンドボックスモードを有効にするプラグイン - ロールバック機能で実行前の状態に戻すことができます vagrant-hostmanager - HOST名の書き換え(host OS含む)