前回のEC2インスタンスにJREを導入してみるに続き、第2弾として、APサーバであるTomcatを入れてみようと思います。
マシンのスペックは前回のを参照してください。
今回入れるTomcatのバージョンは、7.0.29 (2012年1月25日時点の最新版)です
# Tomcat7使ったこと無いけど・・・
1. Tomcat本体ダウンロード
http://tomcat.apache.org/download-70.cgiにアクセスし、tar.gz版TomcatのURLをコピーします。tar.gzのところを右クリックして「リンクアドレスをコピー」をクリックすればコピーできると思います。ブラウザによって、右クリックメニューが異なるので注意してください(僕は普段はChromeを使っています)
EC2インスタンスにSSH接続し、rootユーザになります。その後、コピーしたURLをターミナルの画面に貼り付けてwgetします。ちなみに、ディレクトリは/usr/localでいいです。なんで/usr/tmpにcdしてwgetしたんだろ・・・
2. apache-tomcat-7.0.25.tar.gz解凍
ダウンロードしたapache-tomcat-7.0.25.tar.gzを/usr/tmp上で解凍します。
3. シンボリックリンク設定
Tomcat本体に/usr/local/tomcatでアクセスできるようにシンボリックリンクを貼ります。
4. Tomcat起動
/usr/local/tomcat/binに移動し、catalina.shをオプションstartで起動します。本来は起動する前に設定変更が必要ですが、とりあえず保留。
実行すると、数行のメッセージが出た後にプロンプトが返ってきます。すぐに立ち上がったようです。tomcatのプロセスが立ち上がっていればOKです。
そして、ブラウザでTomcatの管理コンソールにアクセス・・・おっと、8080ポートを開けないとダメですね。
5. 8080ポート開放
AWS Management Consoleで8080ポートを開放します。
※注意:あくまで一時的に8080ポートを開けます。セキュリティの観点からするとTomcatの管理コンソールにアクセスできてしまうのはよくないからです。
AWS Management Consoleにアクセスし、以下の手順で設定します(画像キャプチャ参照)
①「Amazon EC2」をクリック
②「Security Groups」をクリック
③インスタンス起動時に実行されるSecurity Groupを一覧から選択する。特に何も設定等をしていなければ、「quick-start-1」でよいはず。実際にインスタンスが何のSecurity Groupで実行されているかは、左ペインのInstancesをクリックし、起動しているインスタンスの「Security Group」カラムを見ればよい
④「Inboud」タブをクリック
⑤ドロップボックスの中から「Custom TCP rule」を選択
⑥「Port range」欄に8080を入力
⑦「Add Rule」をクリック。その後、ボタンの下に「Your changes have not been applied yet.」というメッセージが現れる。
⑧「Apply Rule Changes」をクリック
⑧まで行くと、以下のように許可ポート一覧に8080のポートが追加された状態になります。
6. Tomcat管理コンソールにアクセス
ブラウザで、「http://ホスト名:8080/」 でアクセスしてみます。管理コンソールのページが表示されればTomcatが正常に起動していると言えます。
今日はここまで。
参考URL:
https://www.ibm.com/developerworks/mydeveloperworks/blogs/pgmrk/tags/jre?lang=en
https://www.ibm.com/developerworks/mydeveloperworks/blogs/pgmrk/entry/amazon_web_services__e3_81_ae_e7_84_a1_e6_96_99_e3_83_86_e3_82_a3_e3_82_a2_e3_82_92_e4_bd_bf_e3_81_862?lang=ja
2012年1月25日水曜日
2012年1月24日火曜日
EC2インスタンスにJREを導入してみる
このブログ書くの久々だな・・・
今ちょうどEC2インスタンスをお遊びで使っていまして、今はせいぜいApacheサーバを動かして、静的なWebページを置いているだけですが、本格的にAPサーバ(Tomcat)とDB(MySQL?)を入れようかなと思いまして・・・
その第1弾として、Tomcatを動かすためにOracle(旧Sun)のJREをEC2インスタンスに入れてみました。その手順を記します。
ちなみに、マシンのスペックですが、
です。
1. インストールされているJavaの確認
EC2インスタンスにSSH接続し、rootユーザになります。インストールされているJavaを以下のようにコマンドを打って確認します。EC2インスタンス作ってから特にJava周りで設定いじっていなければ、デフォルトとしてOpenJDKが使えるようになっていると思います。そうでない場合は既にOracleのJREが入っているか、何も入っていないかのどちらか(のはず)です。
OpenJDKだったので、OralceのJava(JRE)を入れましょうw
2. OracleのJavaインストーラ入手
ブラウザで、http://java.com/ja/download/manual.jsp にアクセスし、Linux版インストーラ(RPM)のURLをコピーしておきます。おそらく、「Linux x64 RPM」を右クリックして「リンクアドレスをコピー」をクリックすればコピーできると思います。それをターミナルの画面に貼り付けてwgetします。
wgetしたファイルの名前が長すぎるので一応リネームしておきます(jre-6u30-linux-rpm.binに変えます)。
3. インストール実行
jre-6u30-linux-rpm.binに実行権限を付与した上でインストールを実行します。
問題なければ最後に「Done」の文字が現れ、/usr/javaというディレクトリが出来ていると思います。
4. パス設定
いつでもどこでもjavaコマンドが実行できるように、Javaのインストールディレクトリへのパスを設定しておきます。/etc/profileをvi等で開き、下記を追加します。
export JAVA_HOME=/usr/java/latest
export JRE_HOME=$JAVA_HOME
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=./$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
最後に以下を実行してパス読み込み完了です。
# source /etc/profile
今までrootユーザで実行してきましたが、他のユーザでもOracleのJavaが利用できるようになりました。試しに普段使うユーザーで以下を実行してみてください。
$ java -version
以上です。次はTomcatを入れるぞい。
参考URL:
https://www.ibm.com/developerworks/mydeveloperworks/blogs/pgmrk/tags/jre?lang=en
今ちょうどEC2インスタンスをお遊びで使っていまして、今はせいぜいApacheサーバを動かして、静的なWebページを置いているだけですが、本格的にAPサーバ(Tomcat)とDB(MySQL?)を入れようかなと思いまして・・・
その第1弾として、Tomcatを動かすためにOracle(旧Sun)のJREをEC2インスタンスに入れてみました。その手順を記します。
ちなみに、マシンのスペックですが、
- OS: Amazon Linux AMI
- Instance Type: Micro(t1.micro)
- CPU Units: Up to 2 ECUs
- CPU Cores: 1 Core
- Memory: 613MB
です。
1. インストールされているJavaの確認
EC2インスタンスにSSH接続し、rootユーザになります。インストールされているJavaを以下のようにコマンドを打って確認します。EC2インスタンス作ってから特にJava周りで設定いじっていなければ、デフォルトとしてOpenJDKが使えるようになっていると思います。そうでない場合は既にOracleのJREが入っているか、何も入っていないかのどちらか(のはず)です。
OpenJDKだったので、OralceのJava(JRE)を入れましょうw
2. OracleのJavaインストーラ入手
ブラウザで、http://java.com/ja/download/manual.jsp にアクセスし、Linux版インストーラ(RPM)のURLをコピーしておきます。おそらく、「Linux x64 RPM」を右クリックして「リンクアドレスをコピー」をクリックすればコピーできると思います。それをターミナルの画面に貼り付けてwgetします。
wgetしたファイルの名前が長すぎるので一応リネームしておきます(jre-6u30-linux-rpm.binに変えます)。
3. インストール実行
jre-6u30-linux-rpm.binに実行権限を付与した上でインストールを実行します。
問題なければ最後に「Done」の文字が現れ、/usr/javaというディレクトリが出来ていると思います。
4. パス設定
いつでもどこでもjavaコマンドが実行できるように、Javaのインストールディレクトリへのパスを設定しておきます。/etc/profileをvi等で開き、下記を追加します。
export JAVA_HOME=/usr/java/latest
export JRE_HOME=$JAVA_HOME
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=./$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
最後に以下を実行してパス読み込み完了です。
# source /etc/profile
今までrootユーザで実行してきましたが、他のユーザでもOracleのJavaが利用できるようになりました。試しに普段使うユーザーで以下を実行してみてください。
$ java -version
以上です。次はTomcatを入れるぞい。
参考URL:
https://www.ibm.com/developerworks/mydeveloperworks/blogs/pgmrk/tags/jre?lang=en
2011年7月16日土曜日
Eclipseの起動時に作成したプラグインの設定をしたい場合
Eclipseプラグインは普通はEclipseを起動後に設定ウィンドウを出して設定するものだが、
Eclipse起動時にいろんな状態(例えば、ファイルパスとか)を見て即座に設定したい場合がある。
そのようなプラグインを作る際のやり方を説明する。
1. AbstractUIPluginクラスを継承(extends)、IStartupクラスを実装(implements)するクラスを作る。
2. public void earlyStartup()をオーバーライドし、その中に起動時にやりたい処理を実装する。
3. プラグインプロジェクトのplugin.xml編集
1. Eclipseでplugins.xmlを開き、「拡張」タブクリック
2. 「拡張」画面にある「追加」ボタンをクリック
3. 「拡張ポイント」一覧が現れるので、「org.eclipse.ui.startup」を選択し、「完了」をクリックする。
4. 「拡張」画面に現れた「org.eclipse.ui.startup」の左についている△印をクリックして展開し、出てきた
ものをクリックする。
5. すると右側に「拡張要素詳細」が現れるので、「参照」ボタンを押し、1.~2.で作ったクラスを選択する。
4. 後はプラグインとしてプロジェクトをExportすればよい
以上です。
※参考
Eclipse起動時のプラグイン活性化
Eclipse起動時にいろんな状態(例えば、ファイルパスとか)を見て即座に設定したい場合がある。
そのようなプラグインを作る際のやり方を説明する。
1. AbstractUIPluginクラスを継承(extends)、IStartupクラスを実装(implements)するクラスを作る。
2. public void earlyStartup()をオーバーライドし、その中に起動時にやりたい処理を実装する。
3. プラグインプロジェクトのplugin.xml編集
1. Eclipseでplugins.xmlを開き、「拡張」タブクリック
2. 「拡張」画面にある「追加」ボタンをクリック
3. 「拡張ポイント」一覧が現れるので、「org.eclipse.ui.startup」を選択し、「完了」をクリックする。
4. 「拡張」画面に現れた「org.eclipse.ui.startup」の左についている△印をクリックして展開し、出てきた
ものをクリックする。
5. すると右側に「拡張要素詳細」が現れるので、「参照」ボタンを押し、1.~2.で作ったクラスを選択する。
4. 後はプラグインとしてプロジェクトをExportすればよい
以上です。
※参考
Eclipse起動時のプラグイン活性化
相対パスだったら絶対パスに直す
そのやり方について。
文字列が絶対パスかどうか判定して、もし相対パスだったらgetCanonicalPath()で絶対パス取得する。
基本だけど、ちゃんと記録しておこうと思って書きました。
文字列が絶対パスかどうか判定して、もし相対パスだったらgetCanonicalPath()で絶対パス取得する。
File file = new File(str); // パスを引数に入れてFileインスタンス生成
if (!file.isAbsolute()) { // 絶対パスの判定にisAbsolute()を使う
try {
str = file.getCanonicalPath(); // getCanonicalPath()で絶対パスを取得する
} catch (IOException e) { // getCanonicalPath()は例外をthrowするのでcatchする
e.printStackTrace();
}
}
基本だけど、ちゃんと記録しておこうと思って書きました。
登録:
コメント (Atom)













