感谢支持
我们一直在努力

Ubuntu 12.04 安装 GlassFish3.1.2

由于公司产品的一致性需求,我们又从Jetty切换到GlassFish3.1.2.  这次是在Ubuntu 12.04 Server(64bit)上安装 GlassFish web profile.


本文内容主要来源于http://www.nabisoft.com/tutorials/glassfish/installing-glassfish-311-on-ubuntu


上文非常全面,我做了删减,去掉了不需要的iptables一节,因为我们用nginx做转发。同时也解决了一些其他问题。


比如GlassFish3.1.2改变了安全规则。需要一些额外的步骤。


一 安装JDK,设置好环境变量。


我安装的是jdk1.6


  1. root@ www.linuxidc.com :~# java -version  
  2. java version “1.6.0_32”  
  3. Java(TM) SE Runtime Environment (build 1.6.0_32-b05)  
  4. Java HotSpot(TM) 64-Bit Server VM (build 20.7-b02, mixed mode)  
二 创建专用帐号


先创建glassfish系统帐号


  1. # adduser –home /home/glassfish –system –shell /bin/bash glassfish  
  2. Adding system user `glassfish’ (UID 108) …  
  3. Adding new user `glassfish’ (UID 108) with group `nogroup’ …  
  4. Creating home directory `/home/glassfish’ …  
再创建用户组glassfishadmin


  1. # groupadd glassfishadm  


将glassfish加入glassfishadm组,glassfishadmin组的目录也设为/home/glassfish


  1. # usermod -a -G glassfishadm glassfish  

 


  1. chgrp -R glassfishadm /home/glassfish  

三 安装unzip


  1. apt-get install unzip  


四 下载glassfish


切换到glassfish用户,并下载和解压


  1. su glassfish  
  2. cd /home/glassfish  
  3. mkdir downloads  
  4. cd downloads  
  5. wget http://download.java.net/glassfish/3.1.2/release/glassfish-3.1.2-web.zip  
  6. unzip glassfish-3.1.2.zip  
将解压后的文件复制到/hom/glassfish目录下,然后退出该用户


  1. mv /home/glassfish/downloads/glassfish3/* /home/glassfish/  
  2. mv /home/glassfish/downloads/glassfish3/.org.opensolaris,pkg /home/glassfish/.org.opensolaris,pkg  

 


  1. exit  
五 修改目录权限


确保程序可以在glassfish用户下运行


  1. root@ www.linuxidc.com :~# chown -R glassfish /home/glassfish  
  2. root@ www.linuxidc.com :~# chmod -R ug+rwx /home/glassfish/bin/  
  3. root@ www.linuxidc.com :~# chmod -R ug+rwx /home/glassfish/glassfish/bin/  
  4. root@ www.linuxidc.com :~# chmod -R o-rwx /home/glassfish/bin/  
  5. root@ www.linuxidc.com :~# chmod -R o-rwx /home/glassfish/glassfish/bin/  
六 修改端口


修改/hom/glassfish/domains/domain1/config/domain.xml如下:


  1. <network-listeners>  
  2.   <network-listener port=“8081” protocol=“http-listener-1” transport=“tcp” name=“http-listener-1” thread-pool=“http-thread-pool”></network-listener>  
  3.   <network-listener port=“8181” protocol=“http-listener-2” transport=“tcp” name=“http-listener-2” thread-pool=“http-thread-pool”></network-listener>  
  4.   <network-listener port=“4848” protocol=“admin-listener” transport=“tcp” name=“admin-listener” thread-pool=“admin-thread-pool”></network-listener>  
  5. </network-listeners>  
这样,http采用8081,https采用8181,AdminGUI采用4848端口。

七 启动服务


  1. $ su glassfish  
  2. $ /home/glassfish/bin/asadmin start-domain domain1  
  3. There is a process already using the admin port 4848 — it probably is another instance of a GlassFish server.  
这是个GlassFish启动常见的错误,到/etc/hosts目录下看一下


原来这里错了,hostname命令返回的是 www.linuxidc.com


  1. 127.0.1.1   Ubuntu1204TEMPLATE  
修改成:


  1. 127.0.0.1        www.linuxidc.com   
现在启动成功了。


  1. glassfish@ www.linuxidc.com :/root$ /home/glassfish/bin/asadmin start-domain domain1  
  2. Waiting for domain1 to start …….  
  3. Successfully started the domain : domain1  
  4. domain  Location: /home/glassfish/glassfish/domains/domain1  
  5. Log File: /home/glassfish/glassfish/domains/domain1/logs/server.log  
  6. Admin Port: 4848  
  7. Command start-domain executed successfully.  
打开网页http://10.112.18.178:4848/ 无法登录,用户名是admin,密码是adminadmin。为什么?


因为3.1.2加强了安全性。游戏规则改变了。默认admin密码也不再是adminadmin,而是空。




八 启动后启用secure-admin


修改admin默认密码


  1. ./asadmin change-admin-password  
  2. Enter admin user name [default: admin]> (Press enter to use the default user name)  
  3. Enter admin password> (Press enter to use the default password)  
  4. Enter new admin password>   
  5. Enter new admin password again>   
  6. Command change-admin-password executed successfully.<strong>  
  7. </strong>  
特别注意前面两个问题都直接按回车即可。然后设置新密码,比如123456,输入两次。


  1. ./asadmin –host 10.112.18.178 –port 4848 enable-secure-admin  
–host 指定glassfish所在IP,回答两个问题,用户名和密码,分别是admin/123456.


重新启动glassfish.


再次打开网站myserver:4848,突然进行HTTPS提示,同意后。登录,终于看到了。


九 查看glassfish的用户


下面这个命令帮助我们查看当前glassfish的用户:


  1. ./asadmin list-file-users –authrealmname admin-realm  
只有一个admin.

十 创建系统服务


先创建/etc/init.d/glassfish脚本


  1. export AS_JAVA=/usr/lib/jvm/java-6-sun  

  2.    

  3. GLASSFISHPATH=/home/glassfish/bin  

  4.    

  5. case “$1” in  

  6. start)  

  7. echo “starting glassfish from $GLASSFISHPATH”  

  8. sudo -u glassfish $GLASSFISHPATH/asadmin start-domain domain1  

  9. ;;  

  10. restart)  

  11. $0 stop  

  12. $0 start  

  13. ;;  

  14. stop)  

  15. echo “stopping glassfish from $GLASSFISHPATH”  

  16. sudo -u glassfish $GLASSFISHPATH/asadmin stop-domain domain1  

  17. ;;  

  18. *)  

  19. echo $”usage: $0 {start|stop|restart}”  

  20. exit 3  

  21. ;;  

  22. esac  

  23. :  
增加可执行权限:


chmod +x ./glassfish


创建自启动脚本


  1. update-rc.d glassfish defaults  
现在可以通过 


servcie glassfis (start|stop|restart) 来测试了


然后重新启动后继续看是否已经自启动。


产品环境下使用还需要修改默认的master password,可以参考前面引用文章的最后一节:


6. Security configuration before first startup

赞(0) 打赏
转载请注明出处:服务器评测 » Ubuntu 12.04 安装 GlassFish3.1.2
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏