LoginSignup
123
120

More than 5 years have passed since last update.

WindowsでVagrantの環境構築

Last updated at Posted at 2014-07-02

Vagrant 公式サイト
http://www.vagrantup.com/

Vagrant Box 配布サイト
http://www.vagrantbox.es/

VirtualBoxのインストール

VagrantはVirtualBoxの機能を利用してするので、先にインストールしておきます。

VirtualBoxのダウンロード
https://www.virtualbox.org/

BOX(テンプレート)取得

CentOS 32bit

vagrant box add centos32 http://developer.nrel.gov/downloads/vagrant-boxes/CentOS-6.4-i386-v20130731.box

CentOS 64bit

※ WindowsのVirtualBoxで64bitのboxを使う場合は、BIOSでVirtualization Technologyを有効にする必要があります。

vagrant box add centos64 http://developer.nrel.gov/downloads/vagrant-boxes/CentOS-6.4-x86_64-v20130731.box

Ubuntu 32bit

vagrant box add precise32 http://files.vagrantup.com/precise32.box

インストールしたBoxの確認

vagrant box list

インストールしたBoxの削除

vagrant box remove centos32 virtualbox
vagrant box remove centos64 virtualbox
vagrant box remove precise32 virtualbox

仮想マシン用ディレクトリ作成

※ 作成するディレクトリ名は任意

CentOS 32bit

cd c:\
mkdir myCentos32VM
cd myCentos32VM
cd ~
mkdir myCentos32VM
cd myCentos32VM

CentOS 64bit

cd c:\
mkdir myCentos64VM
cd myCentos64VM
cd ~
mkdir myCentos64VM
cd myCentos64VM

Ubuntu 32bit

cd c:\
mkdir myPrecise32VM
cd myPrecise32VM
cd ~
mkdir myPrecise32VM
cd myPrecise32VM

Vagrant設定ファイル生成

ContOS 32bit

vagrant init centos32

ContOS 64bit

vagrant init centos64

Ubuntu 32bit

vagrant init precise32

仮想マシンインストール

vagrant up

仮想マシンの状態確認

vagrant status

仮想マシンのスリープ

vagrant suspend

仮想マシンのスリープからの復帰

vagrant resume

仮想マシンの終了

vagrant halt

仮想マシンの起動

vagrant up

仮想マシンの再起動

vagrant reload

仮想マシンの削除

vagrant destloy

仮想マシンへの接続

vagrant ssh

LANで仮想マシンにアクセス可能にする

CentOS 64bit

CentOS6以降から以下のファイルに記述するでパフォーマンスがあがります。

sudo vi /etc/resolv.conf
1行目に追記します。

single-request-reopen
IPv4のファイヤーウォールを無効にする

sudo service iptables save
sudo service iptables stop
sudo chkconfig iptables off
IPv6のファイヤーウォールを無効にする

sudo service ip6tables save
sudo service ip6tables stop
sudo chkconfig ip6tables off
Ubuntuの場合

ファイヤーウォールを無効にする

sudo iptables -X
sudo iptables -t nat -F
sudo iptables -t nat -X
sudo iptables -t mangle -F
sudo iptables -t mangle -X
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT
sudo ufw disable

仮想環境を抜ける

exit

Vagrantfileを編集

# Create a private network, which allows host-only access to the machine
# using a specific IP.
config.vm.network :private_network, ip: "192.168.33.10"

Vagrant再起動

vagrant reload

Vagrant接続

vagrant ssh

Windowsはコマンドプロンプトからsshでログインできないのでssh接続できるツールを使います。

Putty、TeraTerm、Poderosaあたりが有名なGUIツールです。git-bashを使ってssh接続することも可能ですが、現時点では日本語対応が不十分です。

ポート番号は複数のボックスをvagrant upしていると異なってくるので「vagrant ssh」で表示されるポート番号を参考にしましょう。パスワードは「vagrant」です。

Poderosaの接続設定

poderosa-ssh.jpg

CentOS6系の場合

sudo vi /etc/resolv.conf

1行目に追記

options single-request-reopen

Webサーバーのインストール

手っ取り早くVagrantが動いているか確認するためにApacheをインストールしてみましょう。なおコマンド設定はCentOSのコマンドです。

Webサーバーをインストールします。

sudo yum install -y httpd

Webサーバーを起動します。

sudo service httpd start

Webサーバーを次回パソコンを起動したときに自動起動する設定をします。

sudo chkconfig httpd on

自動起動を無効にするには以下のコマンドを使用します。

sudo chkconfig httpd off

起動中のファイヤーウォールを停止します。

sudo service iptables stop

パソコンを再起動したとき、ファイヤーウォールが自動起動しないように、サービスから解除します。

sudo chkconfig iptables off

ブラウザで「http://192.168.33.10」にアクセスしたときにApacheウェブサーバーの初期画面が表示されたらOKです。

Vagrantの共有フォルダ

/vagrant = C:\myCentOS32VM
/vagrant = ~/myCentOS32VM

Webサーバーのドキュメントルートのシンボリックリンクを共有フォルダに作っておくと便利です。

sudo rm -rf /var/www/html
sudo ln -fs /vagrant /var/www/html
その他、FilezillaやCyberduckなどのSFTPツールを使ってデータを転送する方法もあります。

123
120
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
123
120