シンプルな自動デプロイまでの道のり(Apache編)

前回書いた記事に続いて今回はApacheをインストールして簡単な動作確認まで行きたいと思います。
シンプルな自動デプロイまでの道のり(VirtualBox+Vagrant編)

では作業開始。

Vagrant環境へApacheのインストール

# Vagrantへログイン
vagrant ssh

# yumのアップデート
sudo yum upgrade

# vimのインストール
sudo yum install vim

# CentOSの日本語設定
sudo vim /etc/sysconfig/i18n
- LANG="en_US.UTF-8"
+ LANF="ja_JP.UTF-8"

# Apacheのインストール
sudo yum install httpd

# 自動起動の設定
sudo /sbin/chkconfig httpd on

# apache起動
sudo /etc/rc.d/init.d/httpd start

# Apacheの起動が確認出来たので1回再起動
sudo reboot

最終的にやりたい事がGitでmasterブランチにpushすると本番サーバへデプロイ、masterブランチ以外へのpushはテストサーバへデプロイしたいので、バーチャルホストの設定を行います。

# Vagrantへログイン
vagrant ssh

# バーチャルドメイン用ディレクトリ作成
sudo mkdir /var/www/vhosts
sudo mkdir /var/www/vhosts/www.example.com

# 権限変更
sudo chown vagrant:vagrant /var/www/vhosts/www.example.com

# ドキュメントルート、ログ用ディレクトリ作成
sudo mkdir /var/www/vhosts/www.example.com/{httpdocs,logs}
sudo chown vagrant:vagrant /var/www/vhosts/www.example.com/{httpdocs,logs}

# 同じくテスト環境用ディレクトリ作成
sudo mkdir /var/www/vhosts/debug.example.com
sudo chown vagrant:vagrant /var/www/vhosts/debug.example.com

sudo mkdir /var/www/vhosts/debug.example.com/{httpdocs,logs}
sudo chown vagrant:vagrant /var/www/vhosts/debug.example.com/{httpdocs,logs}

# apache設定ディレクトリへ移動
cd /etc/httpd/conf

# 設定ファイルのバックアップ
sudo cp -a httpd.conf httpd.conf.org

# 設定ファイル編集
sudo vim httpd.conf
- Listen 80
+ #Listen 80


# バーチャルホスト用設定ディレクトリへ移動
cd /etc/httpd/conf.d

# バーチャルホスト用設定ファイル編集
sudo vim vhosts.conf

# 設定ファイルの内容は「バーチャルホスト設定ファイル」を参照

# apacheの再起動
sudo /etc/rc.d/init.d/httpd restart

バーチャルホスト設定ファイル

Listen 80
NameVirtualHost *:80


	ServerName 192.168.33.10
	DocumentRoot /var/www/vhosts/www.example.com/httpdocs

	ErrorLog /var/www/vhosts/www.example.com/logs/error.log
	CustomLog /var/www/vhosts/www.example.com/logs/access.log combined env=!no

	<Directory "/var/www/vhosts/www.example.com/httpdocs">

		Options ExecCGI IncludesNOEXEC FollowSymLinks
		AllowOverride All
		Order allow,deny
		Allow from all

	



Listen 8090
NameVirtualHost *:8090


	ServerName 192.168.33.10:8090
	DocumentRoot /var/www/vhosts/debug.example.com/httpdocs

	ErrorLog /var/www/vhosts/debug.example.com/logs/error.log
	CustomLog /var/www/vhosts/debug.example.com/logs/access.log combined env=!no

	<Directory "/var/www/vhosts/debug.example.com/httpdocs">

		Options ExecCGI IncludesNOEXEC FollowSymLinks
		AllowOverride All
		Order allow,deny
		Allow from all

	


ではwwwとdebugにindex.htmlファイルなどを用意して表示確認してください。