AmazonLinux + GlassFish4 OpenSource版インストールメモ
基本的にこちらの手順に沿ってインストールします。
JDK7ののインストール
Java SE Downloadsのページから。ここでは「jdk-7u25-linux-x64.rpm」を選択します。
$ wget http://download.oracle.com/otn-pub/java/jdk/7u25-b15/jdk-7u25-linux-x64.rpm?AuthParam=1371954590_3d03cab91de40b402e438ee42549fbf7 $ mv jdk-7u25-linux-x64.rpm\?AuthParam\=1371954590_3d03cab91de40b402e438ee42549fbf7 jdk-7u25-linux-x64.rpm $ sudo rpm -ivh jdk-7u25-linux-x64.rpm
GlassFish4のインストール/起動
GlassFish Server - Download Pageこちらのリンクから「glassfish-4.0-ml.zip」を選択します。
$ wget http://download.java.net/glassfish/4.0/release/glassfish-4.0-ml.zip $ unzip glassfish-4.0-ml.zip $ ./glassfish4/bin/asadmin start-domain Exception in thread "main" java.lang.UnsupportedClassVersionError: org/glassfish/admin/cli/AsadminMain : Unsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:634) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:277) at java.net.URLClassLoader.access$000(URLClassLoader.java:73) at java.net.URLClassLoader$1.run(URLClassLoader.java:212) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) Could not find the main class: org.glassfish.admin.cli.AsadminMain. Program will exit.
AmazonLinuxにOpenJDKが入っているのでエラーになったようです。1.7.0に変更します。(参考)
sudo update-alternatives --install /usr/bin/java java /usr/java/jdk1.7.0_25/bin/java 17025 sudo update-alternatives --install /usr/bin/javac javac /usr/java/jdk1.7.0_25/bin/javac 17025
もう一回トライ
$ ./glassfish4/bin/asadmin start-domain Waiting for domain1 to start ................................... Successfully started the domain : domain1 domain Location: /home/ec2-user/glassfish4/glassfish/domains/domain1 Log File: /home/ec2-user/glassfish4/glassfish/domains/domain1/logs/server.log Admin Port: 4848 Command start-domain executed successfully.
起動しました。
ブラウザから確認
4848ポートを有効にしてブラウザからアクセスします。
設定変更
デフォルトだとユーザIDが「admin」パスワードが空なので変更します。
$ ./glassfish4/bin/asadmin change-admin-password Enter admin user name [default: admin]>admin Enter the admin password> Enter the new admin password> Enter the new admin password again> Command change-admin-password executed successfully.
「Secure Admin must be enabled to access the DAS remotely.」が出ていたので設定を変更します。
$ ./glassfish4/bin/asadmin --host [EC2パブリックDNS] enable-secure-admin Enter admin user name> admin Enter admin password for user "admin"> You must restart all running servers for the change in secure admin to take effect. Command enable-secure-admin executed successfully.
再起動します。
$ ./glassfish4/bin/asadmin stop-domain Waiting for the domain to stop . Command stop-domain executed successfully.n executed successfully. $ ./glassfish4/bin/asadmin start-domain Waiting for domain1 to start ............................... Successfully started the domain : domain1 domain Location: /home/ec2-user/glassfish4/glassfish/domains/domain1 Log File: /home/ec2-user/glassfish4/glassfish/domains/domain1/logs/server.log Admin Port: 4848 Command start-domain executed successfully.
再起動したらエラーメッセージが消えているので変更したID/パスワードでログイン
実際に使うときはホスト名指定してSSL証明書を入れる必要があると思いますが、
とりあえず使えそうです。