在Ubuntu上使用Jetty部署War包

前提

有一臺裝有Ubuntu系統的服務器和一個能夠部署的War包html

1.安裝Java

建立文件夾java

sudo mkdir /usr/java
cd /usr/java

進入https://www.oracle.com/technetwork/java/javase/downloads/index.html找到須要安裝的JDK版本下載地址linux

下載JDKweb

sudo wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/13+33/5b8a42f3905b406298b72d750b6919f6/jdk-13_linux-x64_bin.tar.gz

有些版本不支持這種方式下載,因此只能手動下載後再上傳到服務器服務器

解壓JDKcookie

sudo tar -xvzf jdk-13_linux-x64_bin.tar.gz

安裝Java軟鏈oracle

sudo update-alternatives --install "/usr/bin/java" "java" "/usr/java/jdk-13/bin/java" 0
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/java/jdk-13/bin/javac" 0
sudo update-alternatives --set java /usr/java/jdk-13/bin/java
sudo update-alternatives --set javac /usr/java/jdk-13/bin/javac

驗證Java軟鏈app

update-alternatives --list java
update-alternatives --list javac

應該能夠輸出配置的路徑eclipse

修改環境變量webapp

sudo nano /etc/environment

在PATH變量後追加

:/usr/java/jdk-13/bin

新增變量

JAVA_HOME="/usr/java/jdk-13"

Control+X保存退出,編輯後文件相似於以下:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/java/jdk-13/bin"
JAVA_HOME="/usr/java/jdk-13"

驗證Java版本

從新登陸終端

java -version

2.安裝Jetty

進入https://www.eclipse.org/jetty/download.html 複製下載地址

建立文件夾

sudo mkdir /usr/jetty
cd /usr/jetty

下載Jetty

sudo wget https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-distribution/9.4.21.v20190926/jetty-distribution-9.4.21.v20190926.tar.gz

解壓Jetty

sudo tar -xvzf jetty-distribution-9.4.21.v20190926.tar.gz

3.上傳War包

若是有權限能夠直接使用rz命令上傳
進入wabapps文件夾

cd /usr/jetty/jetty-distribution-9.4.21.v20190926/webapps/
rz

固然也能夠使用以下指令將本地文件複製到服務器臨時目錄

scp ~/project.war username@hostname:/tmp

其中username爲用戶名,hostname爲服務器外網地址

而後複製到webapps目錄

sudo mv /tmp/project.war /usr/jetty/jetty-distribution-9.4.21.v20190926/webapps/

4.啓動Jetty

編輯start.ini

sudo vi /usr/jetty/jetty-distribution-9.4.21.v20190926/start.ini

找到jetty.http.host和jetty.http.port,去掉前面的#號,若有須要可修改綁定端口

## Connector host/address to bind to
# jetty.http.host=0.0.0.0

## Connector port to listen on
# jetty.http.port=8080

啓動Jetty

sudo /usr/jetty/jetty-distribution-9.4.21.v20190926/bin/jetty.sh start nohup

中止Jetty

sudo /usr/jetty/jetty-distribution-9.4.21.v20190926/bin/jetty.sh stop

若是隻有一個應用想要把根路徑綁定到該應用,則可在webapps目錄下添加應用同名的xml,如當前有project.war,則可新增project.xml文件,內容爲

<?xml version="1.0"  encoding="ISO-8859-1"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
    <Set name="contextPath">/</Set>
    <Set name="war"><SystemProperty name="jetty.home" default="."/>/webapps/project.war</Set>
</Configure>

完成

參考連接
https://www.javahelps.com/2019/04/install-latest-oracle-jdk-on-linux.html
https://www.cnblogs.com/freeweb/p/5942972.html

相關文章
相關標籤/搜索