Cách cài đặt Jetty JAVA http Server trên Debian 10

theanh

Administrator
Nhân viên
Jetty là một máy chủ Java HTTP mã nguồn mở và miễn phí có thể được sử dụng trong nhiều dự án khác nhau, cả trong quá trình phát triển và sản xuất. Jetty có kích thước nhỏ, có thể nhúng, đầy đủ tính năng và hỗ trợ SPDY, WebSocket, OSGi, JNDI, JAAS và nhiều tích hợp khác. Jetty được sử dụng trong nhiều sản phẩm đang hoạt động như Alfresco, Apache ActiveMQ, Apache Spark, Apache Maven, Red5 và Hadoop.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt Jetty trên Debian 10.

Yêu cầu​

  • Máy chủ chạy Debian 10.
  • Mật khẩu gốc được cấu hình trên máy chủ của bạn.

Bắt đầu​

Trước tiên, bạn nên cập nhật hệ thống của mình lên phiên bản mới nhất. Bạn có thể thực hiện bằng cách chạy lệnh sau:
Mã:
apt-get update -y
 apt-get upgrade -y
Sau khi hệ thống của bạn được cập nhật, hãy khởi động lại hệ thống để áp dụng các thay đổi cấu hình.

Cài đặt Java​

Jetty là một ứng dụng dựa trên Java. Vì vậy, bạn sẽ cần cài đặt Java vào hệ thống của mình. Theo mặc định, phiên bản Java mới nhất có sẵn trong kho lưu trữ mặc định của Debian 10. Bạn có thể cài đặt bằng cách chỉ cần chạy lệnh sau:
Mã:
apt-get install default-jdk -y
Sau khi quá trình cài đặt hoàn tất, bạn có thể kiểm tra phiên bản Java bằng lệnh sau:
Mã:
java --version
Bạn sẽ nhận được kết quả sau:
Mã:
openjdk 11.0.3 2019-04-16Môi trường chạy thời gian OpenJDK (bản dựng 11.0.3+7-post-Debian-5)Máy ảo máy chủ OpenJDK 64-Bit (bản dựng 11.0.3+7-post-Debian-5, chế độ hỗn hợp, chia sẻ)

Cài đặt Jetty​

Theo mặc định, Jetty có sẵn trong kho lưu trữ mặc định của Debian 10. Bạn có thể cài đặt bằng cách chỉ cần chạy lệnh sau:
Mã:
apt-get install jetty9 -y
Sau khi cài đặt, hãy kiểm tra phiên bản Jetty bằng lệnh sau:
Mã:
apt show jetty9
Bạn sẽ thấy kết quả sau:
Mã:
Gói: jetty9Phiên bản: 9.4.15-1Mức độ ưu tiên: tùy chọnPhần: javaNgười bảo trì: Người bảo trì Java Debian Installed-Size: 757 kB
Tiếp theo, khởi động dịch vụ Jetty và cho phép dịch vụ này khởi động sau khi hệ thống khởi động lại bằng lệnh sau:
Mã:
systemctl start jetty9
 systemctl enable jetty9
Bạn cũng có thể kiểm tra trạng thái Jetty bằng lệnh sau:
Mã:
systemctl status jetty9
Bạn sẽ nhận được kết quả sau:
Mã:
? jetty9.service - Máy chủ ứng dụng web Jetty 9 Đã tải: đã tải (/lib/systemd/system/jetty9.service; enabled; vendor preset: enabled) Đang hoạt động: đang hoạt động (đang chạy) kể từ Sat 2019-09-28 02:47:55 EDT; 1 phút 11 giây trước Tài liệu: https://www.eclipse.org/jetty/documentation/current/ PID chính: 1658 (java) Nhiệm vụ: 24 (giới hạn: 1138) Bộ nhớ: 69,9M CGroup: /system.slice/jetty9.service ??1658 /usr/bin/java -Djetty.home=/usr/share/jetty9 -Djetty.base=/usr/share/jetty9 -Djava.io.tmpdir=/tmp -jar /usr/share/jetty9/star28/09 02:48:12 debian jetty9[1658]: 28/09/2019 02:48:12.492:INFO:oejdp.ScanningAppProvider:main: Deployment monitor [file:///var/lib/jetty9/we28/09 02:48:14 debian jetty9[1658]: 2019-09-28 02:48:14.079:INFO:oeja.AnnotationConfiguration:main: Thời gian quét đã trôi qua=16ms28/09 02:48:14 debian jetty9[1658]: 2019-09-28 02:48:14.602:INFO:oejshC.root:main: Cảnh báo: Không có org.apache.tomcat.JarScanner nào được đặt trong ServletCont28/09 02:48:15 debian jetty9[1658]: 2019-09-28 02:48:15.796:INFO:oajs.TldScanner:main: Ít nhất một JAR đã được quét để tìm TLD nhưng không chứa28/09 02:48:16 debian jetty9[1658]: 2019-09-28 02:48:16.312:INFO:oejs.session:main: DefaultSessionIdManager workerName=node028/09 02:48:16 debian jetty9[1658]: 2019-09-28 02:48:16.315:INFO:oejs.session:main: Không có SessionScavenger nào được đặt, sử dụng mặc định28/09 02:48:16 debian jetty9[1658]: 2019-09-28 02:48:16.318:INFO:oejs.session:main: node0 Quét sau mỗi 600000ms28/09 02:48:16 debian jetty9[1658]: 2019-09-28 02:48:16.587:INFO:oejsh.ContextHandler:main: Đã bắt đầu o.e.j.w.WebAppContext@2f4948e4{root,/,file28/09 02:48:16 debian jetty9[1658]: 2019-09-28 02:48:16.836:INFO:oejs.AbstractConnector:main: Đã bắt đầu ServerConnector@18419dc8{HTTP/1.1,[http/28/09 02:48:16 debian jetty9[1658]: 2019-09-28 02:48:16.843:INFO:oejs.Server:main: Đã bắt đầu @21109mslines 1-20/20 (KẾT THÚC)

Cấu hình Nginx làm Proxy ngược cho Jetty​

Theo mặc định, Jetty chạy trên cổng 8080. Vì vậy, bạn sẽ cần cấu hình Nginx làm proxy ngược để chuyển tiếp yêu cầu từ cổng 80 đến 8080.

Để thực hiện, trước tiên hãy cài đặt máy chủ web Nginx bằng lệnh sau:
Mã:
apt-get install nginx -y
Tiếp theo, tạo tệp cấu hình máy chủ ảo mới cho Jetty bằng lệnh sau:
Mã:
nano /etc/nginx/sites-available/jetty.conf
Thêm các dòng sau:
Mã:
upstream jetty { server 127.0.0.1:8080 weight=100 max_fails=5 fail_timeout=5;}server { listen 80; server_name example.com; location / { proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_pass http://jetty/; }}
Lưu và đóng tệp khi bạn hoàn tất. Sau đó, hãy kiểm tra Nginx xem có lỗi cú pháp nào không bằng lệnh sau:
Mã:
nginx -t
Bạn sẽ thấy kết quả sau:
Mã:
nginx: tệp cấu hình /etc/nginx/nginx.conf syntax is oknginx: tệp cấu hình /etc/nginx/nginx.conf test is successful
Tiếp theo, hãy bật máy chủ ảo Nginx và khởi động lại dịch vụ Nginx để áp dụng cấu hình mới:
Mã:
ln -s /etc/nginx/sites-available/jetty.conf /etc/nginx/sites-enabled/
 systemctl restart nginx

Truy cập Giao diện web Jetty​

Bây giờ, hãy mở trình duyệt web của bạn và nhập URL http://example.com. Bạn sẽ được chuyển hướng đến bảng điều khiển mặc định của Jetty trong màn hình sau:



Xin chúc mừng! bạn đã cài đặt và cấu hình thành công Jetty với Nginx trên Debian 10. Bây giờ bạn có thể dễ dàng triển khai ứng dụng Java của mình với Jetty.
 
Back
Bên trên