29
33

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Vagrant+CentOS6.5+Apache+PHP+Mysql+CakePHPの環境構築 その①

Last updated at Posted at 2015-01-15

キリが悪かったので追記しました。

おそがけながら、必要になったので。
なんとなくVagrantを理解してきたよーな。。。
慣れたら一瞬で仮想マシン構築できるから、これは便利だわ。
って、今頃思ってます。

次はCakePHP導入まで行く。。。。ぞ。。。

#用意するもの

#Vagrantのインストールと使い方
VirtualBoxは入れるだけ。
Vagrantのインストールが終わったら、コンソールでバージョンコマンドを打ってみてレスポンスが返ってきたらOK。

console
$ vagrant -v

##Boxファイルを追加
Vagrantが使う仮想マシンイメージをBoxファイルを言うらしいので、
リンク先のリストから目当てのboxファイルを探してCopy!!

今回は「CentOS 6.5 x86_64」を使うので「centos65」って名前でboxファイル追加

console
$ vagrant box add centos65 CopyURL

box listコマンドで表示されたら追加OK。

console
$ vagrant box list

###vagrant box コマンド

  • vagrant box add boxの追加
  • vagrant box list boxの表示
  • vagrant box remove boxの削除
  • vagrant repackage よくわかりません

##仮想マシン初期化&起動
事前に用意した作業フォルダに移動して、初期化呪文を唱える。

console
$ cd /your/work/directory  ##作業フォルダに移動
$ vagrant init centos65  ##さっきつけたboxファイル名を指定して詠唱

そしていよいよ。。。
雑念を捨てながら、祈りながら、仮想マシンを起動。

console
$ vagrant up

読み込みが終わったら、SSHで仮想マシンへアクセス

console
$ vagrant ssh

プライベートキーのパスフレーズを聞かれるけど無視してenter
ログインパスワードを聞かれるのでvagrantを入力

###vagrant 仮想マシン操作系のコマンド

  • vagrant status 状態確認
  • vagrant suspend スリープ
  • vagrant resume スリープ解除
  • vagrant halt シャットダウン
  • vagrant reload 再起動
  • vagrant destroy 仮想マシンを削除

もっとコマンド調べたい時はここ
https://docs.vagrantup.com/v2/cli/index.html

#Apache導入とVagrantfile
ちょっと普通のCentOSの設定とは勝手が違ってちょっとコケた。
キーポイントはVagrantfileにあり。

##Apacheインストール
まずはお約束のyum updateを実行した後、Apacheをインスコ。
(今回はローカルでの環境構築が主要素なので、セキュリティ周辺やらなんやらは割愛)

console
$ sudo yum update  ##お約束
$ sudo yum install httpd  ##Apacheインスコ

インスコしたら、Apache起動してマシン起動時に一緒に立ち上がるように設定。

console
$ sudo service httpd start  ##Apache起動
$ sudo chkconfig httpd on  ##マシン起動時に立ち上がるおまじない

##Vagrantfileを編集
Vagrantで仮想マシンを作るとルートにvagrantというフォルダが出来ていて、その中にあるVagrantfileを編集する。
コメントと一緒にだらだらーっと書かれてあって、ちゃんと読めばいいんだけど、このごろ目がショボショボして。。。

なので、コメントを削除してスッキリさせるとこう。

console
$ cat /vagrant/Vagrantfile
/vagrant/Vagrantfile
# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure(2) do |config|

  config.vm.box = "centos65"

  # config.vm.box_check_update = false

  #config.vm.network "forwarded_port", guest: 80, host: 8080

  # config.vm.network "private_network", ip: "192.168.33.10"

  # config.vm.network "public_network"

  # 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.push.define "atlas" do |push|
  #   push.app = "YOUR_ATLAS_USERNAME/YOUR_APPLICATION_NAME"
  # end

  # config.vm.provision "shell", inline: <<-SHELL
  #   sudo apt-get update
  #   sudo apt-get install -y apache2
  # SHELL
end

それぞれの設定項目については公式参照
http://lab.raqda.com/vagrant/vagrantfile/machine_settings.html

ちゅーことで、ポート設定の行のコメントアウトを外す。

console
$ vi /vagrant/Vagrantfile
/vagrant/Vagrantfile
#config.vm.network "forwarded_port", guest: 80, host: 8080
↓ コメントアウト外す
config.vm.network "forwarded_port", guest: 80, host: 8080

このままだと、Vagrantfileの設定が反映しないので、仮想マシンを再起動。

console
$ exit ##仮想マシンログアウト
$ vagrant reload ##仮想マシン再起動

再起動が終了したら、http://127.0.0.1:8080/ にアクセスしてApacheの画面が表示されればOK。

###Vagrantfileの詳しい設定方法
公式ドキュメント参照
http://lab.raqda.com/vagrant/vagrantfile/index.html

##Vagrantのフォルダ同期について
vagrant initした作業フォルダと、仮想マシンの/vagrantの中が同期しているみたい。
試しに仮想マシン側で何か適当なファイルを作ると、作業フォルダにも同じファイルが生成されるし、Vagrantfileも同期される。

29
33
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
29
33

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?