You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何官方部署Jetty 11独立实例?遇发行版及Debian包缺失问题

Jetty 11.0.15 在Debian 11上的官方部署方式

Jetty 11官方并未提供Debian专属安装包,推荐通过独立发行包手动部署,步骤如下:

1. 准备Java 17环境

Jetty 11要求Java 17作为运行环境,先在Debian 11上安装OpenJDK 17:

apt update && apt install -y openjdk-17-jre

验证Java版本:

java -version

输出需显示openjdk version "17.x.x"。

2. 下载并解压Jetty独立发行包

Jetty官方稳定版发行包可从官方渠道获取,下载对应11.0.15版本的tar.gz包后,解压到目标目录(如/opt/jetty):

mkdir -p /opt/jetty
tar -xzf jetty-distribution-11.0.15.tar.gz -C /opt/jetty --strip-components=1

3. 创建专用运行用户

为安全起见,不要以root用户运行Jetty,创建专用系统用户:

useradd -r -m -U -d /opt/jetty -s /usr/sbin/nologin jetty
chown -R jetty:jetty /opt/jetty

4. 配置Jetty Base目录(官方推荐)

Jetty官方建议使用独立的jetty.base目录存放应用和自定义配置,避免修改核心发行包目录,方便后续升级:

mkdir -p /opt/jetty-base
/opt/jetty/bin/jetty.sh configure /opt/jetty-base

此操作会将默认配置复制到/opt/jetty-base,后续所有配置和应用都放在该目录下。

5. 部署Web应用

将你的Web应用WAR包复制到/opt/jetty-base/webapps目录,Jetty会自动识别并部署:

cp your-app.war /opt/jetty-base/webapps/

若需自定义部署规则,可编辑/opt/jetty-base/etc/jetty-webapp.xml调整配置。

6. 配置Systemd服务

创建Systemd服务文件以管理Jetty进程,方便开机自启和状态管理:
创建/etc/systemd/system/jetty.service文件,内容如下:

[Unit]
Description=Jetty 11 Web Server
After=network.target

[Service]
User=jetty
Group=jetty
WorkingDirectory=/opt/jetty-base
Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64"
Environment="JETTY_HOME=/opt/jetty"
Environment="JETTY_BASE=/opt/jetty-base"
ExecStart=/opt/jetty/bin/jetty.sh start
ExecStop=/opt/jetty/bin/jetty.sh stop
ExecReload=/opt/jetty/bin/jetty.sh reload
Restart=on-failure

[Install]
WantedBy=multi-user.target

然后重载Systemd并启动服务:

systemctl daemon-reload
systemctl start jetty
systemctl enable jetty

7. 验证部署

访问服务器的8080端口(默认端口),确认Web应用正常运行:

curl http://localhost:8080

注:Maven仓库中的jetty-distribution实际上包含Jetty 11的稳定版本,若需通过Maven获取,可直接拉取对应版本的构件包,解压后按上述步骤部署即可。

内容的提问来源于stack exchange,提问作者JCvanDamme

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 06:02:11