LoginSignup
28
28

More than 5 years have passed since last update.

VagrantでWEBアプリ実行環境構築

Last updated at Posted at 2013-11-28

vagrantを使ったWEBアプリの実行環境作成についてのメモ

vagrantにCentOSを追加

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

vagrant init centos64

//起動
vagrant up
//停止
vagrant halt
//接続
vagrant ssh

共有ディレクトリについて
ディレクトリは初期状態で../date /vagrant
ホストはVagrantfileがある場所、vagrant内は/vagrant

apacheの導入

インストール

sudo yum install httpd
sudo sudo chkconfig --level 345 httpd on
sudo /etc/init.d/httpd start
sudo vi /etc/sysconfig/iptables

ファイアウォールの設定

sudo vi /etc/sysconfig/iptables

⬇ファイルを書き換える

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# SSH, HTTP, FTP1, FTP2, MySQL
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
\COMMIT
\

apache再起動

sudo /etc/rc.d/init.d/iptables restart

自動起動設定

chkconfig httpd on

参考サイト
http://vboxmania.net/content/%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E8%A8%AD%E5%AE%9A
http://qiita.com/items/0f3e3ca4dc67495c8218
http://freesoft.tvbok.com/freesoft/virtual/vmware_centos4.html

外部公開設定
http://d.hatena.ne.jp/p4life/20090413/1239624784

ここまででvagrantが設定したIPにブラウザでアクセスすればapacheの初期画面が見れる。
vagrantのIPはifconfigで確認できる。

java導入

インストール

sudo yum install java
sudo yum -y install java-1.6.0-openjdk

tomcat導入

インストール

sudo yum install tomcat6 tomcat6-webapps tomcat6-admin-webapps

tomcatユーザーをrootに設定

sudo vi /etc/tomcat6/tomcat6.conf

⬇書き換える

JAVA_HOME="/usr/lib/jvm/jre-1.6.0"
TOMCAT_USER="root"

sudo vi /usr/share/tomcat6/conf/server.xml

tomcat起動

sudo /etc/rc.d/init.d/tomcat6 start

自動起動時の設定

sudo chkconfig tomcat6 on
sudo chkconfig --list tomcat6

参考ページ
http://kajuhome.com/tomcat6.shtml

ファイアウォールの設定

iptables -L -n
vi /etc/sysconfig/iptables

⬇2行の追加

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT

ファイアウォール再起動

sudo /etc/rc.d/init.d/iptables restart

ここまででvagrantで設定したIPに8080ポートでアクセスすればtomcatの初期画面が見れる。
http://◯◯◯◯◯:8080/

apacheとtomcat連携

これをやらないとcssなど静的ファイルが正常に読み込めなかった。
外部公開も可能になる。

vi /etc/tomcat6/server.xml

↓コメントアウトされてないことを確認する

connectionTimeout="20000"
redirectPort="8443" />

vi /etc/httpd/conf/httpd.conf

↓コメントアウトされてないことを確認する

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so

アプリ用のファイル追加
※exampleはwebappsに配置するディレクトリ名

vi /etc/httpd/conf.d/proxy_ajp.conf
ProxyPass /examples/ ajp://127.0.0.1:8009/examples/

これで閲覧することが可能になる。

28
28
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
28
28