諸事情によりVPSのOSを再インストールしました。いい機会なので色々と前と環境を変えてみました。
OSはCentOS6.5のままですが、いろいろと変えました。
やりたいこと | 前の環境 | 新しい環境 |
---|---|---|
HTTPサーバ | Apache | Nginx |
データベース | PostgreSQL9.1 | PostgreSQL9.3 |
Ruby | Ruby2.0.0 | Ruby2.1.3 |
git | git2.0 | git2.1 |
まあこんなかんじ。他にも変えたけど覚えてねえや。
今回は授業にもがっつり使えるようにするのが目標だったので、とりあえずRedmine入れたりしました。
タイトルの話
さっき書いたように、授業でも使えるようにしたいのですよ。
うちの学校の授業ではJavaのサーブレットをいじるので、その環境を作ったって話。
あんまりJavaが好きじゃない勢としては苦痛ですがしゃーない。
手順はこんな感じです。
やってた中で一番苦痛だったのは1と2でした()
作業
Javaいれる
とりあえず困ったらyum
使えばいいという風潮
# yum search openjdk Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile * base: ftp.tsukuba.wide.ad.jp * epel: ftp.kddilabs.jp * extras: ftp.tsukuba.wide.ad.jp * updates: ftp.tsukuba.wide.ad.jp ====== N/S Matched: openjdk ======= java-1.6.0-openjdk-devel.x86_64 : OpenJDK Development Environment icedtea-web.x86_64 : Additional Java components for OpenJDK - Java browser plug-in and Web Start implementation java-1.6.0-openjdk.x86_64 : OpenJDK Runtime Environment java-1.6.0-openjdk-demo.x86_64 : OpenJDK Demos java-1.6.0-openjdk-javadoc.x86_64 : OpenJDK API Documentation java-1.6.0-openjdk-src.x86_64 : OpenJDK Source Bundle java-1.7.0-openjdk.x86_64 : OpenJDK Runtime Environment java-1.7.0-openjdk-demo.x86_64 : OpenJDK Demos java-1.7.0-openjdk-devel.x86_64 : OpenJDK Development Environment java-1.7.0-openjdk-javadoc.noarch : OpenJDK API Documentation java-1.7.0-openjdk-src.x86_64 : OpenJDK Source Bundle
Java 7がこの中だと新しいので、java-1.7...を入れましょう。
ランタイムだけでもいいんだけど、開発もしたいのでjava-1.7.0-openjdk-devel
も入れましょう。
# yum install java-1.7.0-openjdk java-1.7.0-openjdk-devel
終わったら確認
# java -version java version "1.7.0_65" OpenJDK Runtime Environment (rhel-2.5.1.2.el6_5-x86_64 u65-b17) OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode) # javac -version javac 1.7.0_65
できたー゚+.(ノ*・ω・)ノ *
Javaの設定
JAVA_HOME
などという環境変数を設定しないといけないらしい。ほんとめんどくさい。
とりあえず、Javaの場所を確認。
# readlink $(readlink $(which java)) /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
これを設定しましょう。だるいので全ユーザに対して当てます。
# echo "JAVA_HOME=/usr/lib/jvm/jre-1.7.0-openjdk.x86_64" >> /etc/profile # echo "export JAVA_HOME" >> /etc/profile
これで完了!
Tomcatのインストール
Tomcatいれますよー。アイコンが猫なのか虎なのかよくわからんですが、これってどっちなの。
とりあえずパッケージ落とします。
# wget http://ftp.yz.yamagata-u.ac.jp/pub/network/apache/tomcat/tomcat-7/v7.0.56/bin/apache-tomcat-7.0.56.tar.gz
なんか、tomcatってどう使えばいいのかよくわからんので、適当にやってみます。
# tar xf apache-tomcat-7.0.56.tar.gz # mv apache-tomcat-7.0.56.tar.gz /usr/local/tomcat # useradd -s /sbin/nologin tomcat # tomcatはsuで動かしたらアカンです # chown -R tomcat /usr/local/tomcat
これで入ったらしい。
Tomcatの起動確認
とりあえず起動確認します。ポートはデフォルトで8080らしいです。
# sudo -u tomcat /usr/local/tomcat/bin/startup.sh Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Tomcat started.
スタートしたらしいのでアクセスしてみましょう。
iptablesとかSELinux使ってる場合はまあいろいろ適当に設定してください。
できたー゚+.(ノ*・ω・)ノ *
Nginxとの連携
まあNginxのリバースプロキシ使えばいいだけの話ですがね。
tomcat.conf
とか適当に名前つけて、設定を書いてやればいいと思います。
server { listen 80; server_name servlet.example.com; root /home/web/tomcat; access_log /var/log/nginx/tomcat_access.log; error_log /var/log/nginx/tomcat_error.log; location / { proxy_pass http://127.0.0.1:8080/; } }
で、そのアドレスにつなげると
できたー゚+.(ノ*・ω・)ノ *
実際にサーブレットをかいてみる
とおもったけど、Exampleが用意されてますね。
# ln -s /usr/local/tomcat/webapps/examples/home/web/tomcat/
で、servlet.example.com/examples
につなげると
できたー゚+.(ノ・ω・)ノ
まとめ
Javaはクソ
参考文献