鍍金池/ 問答/Java  Linux/ 在谷歌云平臺上部署tomcat

在谷歌云平臺上部署tomcat

我在谷歌云平臺上裝好jdk、配置環(huán)境變量后,解壓tomcat壓縮包,直接啟動tomcat下的startup.sh,結(jié)果瀏覽器中就是無法訪問,我谷歌云的配置是Ubuntu 16.04.4 LTS,已提高到3.75G內(nèi)存,防火墻規(guī)則是對任意ip:port開放所有端口,啟動tomcat時的提示如圖,跟在自家服務(wù)器上的操作應(yīng)該是一樣的,但在瀏覽器上就是無法訪問,誰能告訴一下是怎么回事么?

而且在logs/catalina.out里也沒有tomcat啟動成功的提示,最后一行一直是
INFO: Deploying web application directory /environment/apache-tomcat-7.0.79/webapps/docs

回答
編輯回答
只愛你

證實是由于JRE的一個已知BUG導(dǎo)致的。

以下引自關(guān)于Ubuntu14.04無法啟動Tomcat的解決方案 :

【問題分析】
Tomcat以及Hadoop使用Java開發(fā),使用了java.security.SecureRandom的API。此API在某些JRE中默認(rèn)使用/dev/random生成,而/dev/random接收CPU溫度、鍵盤等硬件雜訊來生成熵。因為云服務(wù)器是采用虛擬化技術(shù)的云服務(wù)器環(huán)境,很難感知CPU溫度等信號則很難生成熵,因此cat/dev/random幾乎阻塞而導(dǎo)致Tomcat、Hadoop 啟動受阻。
【規(guī)避措施】
修改JRE配置
修改原/$JAVA_HOME/jre/lib/security/java.security中的securerandom.source=file:/dev/urandomsecurerandom.source=file:/dev/./urandom
2017年8月13日 11:30
編輯回答
拼未來

首先查看進(jìn)程是否真正啟動

ps -aux | grep tomcat #查看tomcat進(jìn)程是否啟動

如果沒有輸出tomcat相關(guān)的信息,那么有可能出現(xiàn)端口沖突問題,而導(dǎo)致tomcat down掉,嘗試修改tomcat配置文件的對外端口號再次啟動tomcst查看是否正常。
另一種方法,查看端口占用,8080為tomcat http默認(rèn)端口,如果沒有修改過,那么可以執(zhí)行

lsof -i:8080。#查看8080端口被誰占用

保證cms已接入公網(wǎng),換句話說cms可以用公網(wǎng)ip訪問。

再有一種特殊情況,你的tomcat不完整,并未包含tomcat相關(guān)web實例項目,在tomcat home查看

  ls $tomcathone/webapps  #查看是否有相關(guān)tomcat web實例
2017年2月11日 23:14