Glassfish là một máy chủ mã nguồn mở miễn phí được sử dụng để triển khai các ứng dụng dựa trên Java. Nó cho phép các nhà phát triển phát triển các ứng dụng doanh nghiệp thuận tiện và có thể mở rộng. Dự án glassfish được Sun Microsystem khởi xướng và hiện được Oracle Corporation tài trợ. Nó thuộc hai giấy phép phần mềm miễn phí là Giấy phép phát triển và phân phối chung và Giấy phép công cộng GNU.
Trong bài đăng này, chúng tôi sẽ chỉ cho bạn cách cài đặt máy chủ Glassfish với Nginx làm proxy ngược trên Ubuntu 22.04.
Sau khi Java được cài đặt, hãy xác minh phiên bản Java bằng lệnh sau:
Bạn sẽ nhận được phiên bản Java trong đầu ra sau:
Sau khi tải xuống hoàn tất, hãy giải nén tệp đã tải xuống vào thư mục /opt:
Thêm các dòng sau:
Lưu và đóng tệp sau đó tải lại daemon systemd để áp dụng các thay đổi.
Tiếp theo, hãy khởi động dịch vụ Glassfish và cho phép dịch vụ này khởi động khi khởi động lại hệ thống:
Bạn cũng có thể kiểm tra trạng thái của dịch vụ Glassfish bằng lệnh sau:
Bạn sẽ thấy đầu ra sau:
Bạn sẽ được yêu cầu cung cấp tên người dùng:
Cung cấp admin làm tên người dùng và nhấn phím Enter. Bạn sẽ được yêu cầu cung cấp mật khẩu:
Chỉ cần nhấn phím Enter mà không cần nhập bất cứ thứ gì. Bạn sẽ được yêu cầu đặt mật khẩu mới:
Cung cấp mật khẩu mới của bạn và nhấn phím Enter để đặt mật khẩu.
Tiếp theo, bạn cũng sẽ cần bật đăng nhập an toàn. Bạn có thể bật bằng lệnh sau:
Bạn sẽ được yêu cầu cung cấp tên người dùng và mật khẩu quản trị viên để bật đăng nhập an toàn.
Tiếp theo, khởi động lại dịch vụ Glassfish để áp dụng các thay đổi:
Sau khi Nginx được cài đặt, hãy tạo tệp cấu hình máy chủ ảo Nginx:
Thêm cấu hình sau:
Lưu và đóng tệp khi bạn hoàn tất, sau đó xác minh Nginx xem có lỗi cấu hình cú pháp nào không bằng lệnh sau:
Nếu mọi thứ đều ổn, bạn sẽ nhận được kết quả sau:
Tiếp theo, khởi động lại dịch vụ Nginx để áp dụng các thay đổi:
Bạn cũng có thể kiểm tra trạng thái của Nginx bằng lệnh sau:
Bạn sẽ thấy kết quả sau:
Sau khi tường lửa UFW được cài đặt, hãy cho phép tất cả các cổng và dịch vụ cần thiết bằng lệnh sau:
Tiếp theo, hãy bật tường lửa UFW để khởi động sau khi hệ thống khởi động lại:
Bây giờ bạn có thể kiểm tra trạng thái của tường lửa UFW bằng lệnh sau:
Bạn sẽ nhận được kết quả sau:
Để truy cập giao diện quản trị Glassfish, hãy nhập URL . Bạn sẽ được chuyển hướng đến trang đăng nhập Glassfish:
Cung cấp tên người dùng quản trị, mật khẩu và nhấp vào nút Đăng nhập. Bạn sẽ thấy bảng điều khiển Glassfish trên trang sau:
Nhấp vào máy chủ ở ngăn bên trái. Bạn sẽ thấy trang thông tin chung.
Tại đây, bạn có thể khởi động, dừng và giám sát máy chủ Glassfish.
Nhấp vào Nút ở ngăn bên trái. Bạn sẽ thấy nút Glassfish trên trang sau.
Nhấp vào Ứng dụng ở ngăn bên trái. Bạn sẽ thấy tất cả các ứng dụng đã triển khai của mình trên trang sau.
Trong bài đăng này, chúng tôi sẽ chỉ cho bạn cách cài đặt máy chủ Glassfish với Nginx làm proxy ngược trên Ubuntu 22.04.
Điều kiện tiên quyết
- Một máy chủ chạy Ubuntu 22.04.
- Một tên miền hợp lệ được trỏ bằng IP máy chủ của bạn.
- Một mật khẩu gốc được cấu hình trên máy chủ.
Cài đặt Java JDK
Glassfish là một ứng dụng dựa trên Java. Vì vậy, bạn sẽ cần cài đặt Java JDK trên máy chủ của mình. Bạn có thể cài đặt bằng cách chạy lệnh sau:
Mã:
apt-get install default-jdk unzip -y
Mã:
java --version
Mã:
openjdk 11.0.15 2022-04-19Môi trường thời gian chạy OpenJDK (bản dựng 11.0.15+10-Ubuntu-0ubuntu0.22.04.1)OpenJDK Máy ảo máy chủ 64-Bit (bản dựng 11.0.15+10-Ubuntu-0ubuntu0.22.04.1, chế độ hỗn hợp, chia sẻ)
Tải xuống Glassfish Server
Trước tiên, bạn sẽ cần tải xuống Glassfish từ trang tải xuống chính thức của họ. Bạn có thể tải xuống bằng lệnh sau:
Mã:
wget https://download.eclipse.org/ee4j/glassfish/glassfish-6.1.0.zip
Mã:
unzip glassfish-6.1.0.zip -d /opt/
Tạo tệp dịch vụ Systemd cho Glassfish
Tiếp theo, bạn sẽ cần tạo tệp dịch vụ systemd để quản lý dịch vụ Glassfish. Bạn có thể tạo nó bằng lệnh sau:
Mã:
nano /usr/lib/systemd/system/glassfish.service
Mã:
[Unit]Description = GlassFish Server v6.1.0After = syslog.target network.target[Service]User = rootExecStart = /usr/bin/java -jar /opt/glassfish6/glassfish/lib/client/appserver-cli.jar start-domainExecStop = /usr/bin/java -jar /opt/glassfish6/glassfish/lib/client/appserver-cli.jar stop-domainExecReload = /usr/bin/java -jar /opt/glassfish6/glassfish/lib/client/appserver-cli.jar restart-domainType = forking[Install]WantedBy = multi-user.target
Mã:
systemctl daemon-reload
Mã:
systemctl start glassfish
systemctl enable glassfish
Mã:
systemctl status glassfish
Mã:
? glassfish.service - GlassFish Server v6.1.0 Đã tải: đã tải (/lib/systemd/system/glassfish.service; đã tắt; cài đặt trước của nhà cung cấp: đã bật) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thu 2022-05-12 15:39:16 UTC; 4 giây trước Tiến trình: 5313 ExecStart=/usr/bin/java -jar /opt/glassfish6/glassfish/lib/client/appserver-cli.jar start-domain (code=exited, status=0/SUC> PID chính: 5326 (java) Nhiệm vụ: 92 (giới hạn: 2292) Bộ nhớ: 289,3M CPU: 12,563 giây CGroup: /system.slice/glassfish.service ??5326 /usr/lib/jvm/java-11-openjdk-amd64/bin/java -cp /opt/glassfish6/glassfish/modules/glassfish.jar -XX:+UnlockDiagnosticVMOp>12 tháng 5 15:39:04 ubuntu systemd[1]: Đang khởi động GlassFish Server v6.1.0...12 tháng 5 15:39:16 ubuntu java[5313]: Đang chờ domain1 khởi động ..........12 tháng 5 15:39:16 ubuntu java[5313]: Đã khởi động domain thành công: domain112 tháng 5 15:39:16 ubuntu java[5313]: domain Vị trí: /opt/glassfish6/glassfish/domains/domain112 tháng 5 15:39:16 ubuntu java[5313]: Tệp nhật ký: /opt/glassfish6/glassfish/domains/domain1/logs/server.log12 tháng 5 15:39:16 ubuntu java[5313]: Cổng quản trị: 484812 tháng 5 15:39:16 ubuntu java[5313]: Lệnh start-domain đã được thực thi thành công.12 tháng 5 15:39:16 ubuntu systemd[1]: Đã khởi động GlassFish Server v6.1.0.
Đặt mật khẩu cho Glassfish và Bật Đăng nhập an toàn
Theo mặc định, người dùng quản trị Glassfish không có mật khẩu. Vì vậy, trước tiên bạn sẽ cần đặt mật khẩu. Bạn có thể đặt mật khẩu bằng lệnh sau:
Mã:
/opt/glassfish6/bin/asadmin --port 4848 change-admin-password
Mã:
Nhập tên người dùng quản trị [mặc định: admin]>admin
Mã:
Nhập mật khẩu quản trị viên>
Mã:
Nhập mật khẩu quản trị viên mới>Nhập lại mật khẩu quản trị viên mới>
Mã:
Lệnh change-admin-password đã được thực hiện thành công.
Mã:
/opt/glassfish6/bin/asadmin --port 4848 enable-secure-admin
Mã:
Nhập tên người dùng quản trị viên> adminNhập mật khẩu quản trị viên cho người dùng "admin">Bạn phải khởi động lại tất cả các máy chủ đang chạy để thay đổi trong secure admin có hiệu lực.Lệnh enable-secure-admin đã được thực hiện thành công.
Mã:
systemctl restart glassfish
Cấu hình Nginx làm Proxy ngược cho Glassfish
Tiếp theo, bạn sẽ cần cài đặt và cấu hình Nginx làm proxy ngược cho Glassfish. Trước tiên, hãy cài đặt máy chủ Nginx bằng lệnh sau:
Mã:
apt-get install nginx -y
Mã:
nano /etc/nginx/conf.d/glassfish.conf
Mã:
upstream glassfish { server 127.0.0.1:8080 weight=100 max_fails=5 fail_timeout=5;}server { listen 80; server_name glassfish.example.com; location / { proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://glassfish/hello/; }}
Mã:
nginx -t
Mã:
nginx: cú pháp tệp cấu hình /etc/nginx/nginx.conf là oknginx: kiểm tra tệp cấu hình /etc/nginx/nginx.conf thành công
Mã:
systemctl restart nginx
Mã:
systemctl status nginx
Mã:
? nginx.service - Máy chủ web hiệu suất cao và máy chủ proxy ngược Đã tải: đã tải (/lib/systemd/system/nginx.service; đã bật; cài đặt trước của nhà cung cấp: đã bật) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thu 2022-05-12 16:09:38 UTC; 6 giây trước Tài liệu: man:nginx(8) Tiến trình: 5687 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Tiến trình: 5689 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS) PID chính: 5690 (nginx) Nhiệm vụ: 2 (giới hạn: 2292) Bộ nhớ: 2,6M CPU: 39ms CGroup: /system.slice/nginx.service ??5690 "nginx: tiến trình chính /usr/sbin/nginx -g daemon on; master_process on;" ??5691 "nginx: worker process" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ""12 tháng 5 16:09:38 ubuntu systemd[1]: Bắt đầu Một máy chủ web hiệu suất cao và một máy chủ proxy ngược...12 tháng 5 16:09:38 ubuntu systemd[1]: Bắt đầu Một máy chủ web hiệu suất cao và một máy chủ proxy ngược.
Cấu hình Tường lửa UFW
Vì lý do bảo mật, bạn nên cài đặt và cấu hình tường lửa UFW trong hệ thống của mình. Trước tiên, hãy cài đặt tường lửa UFW bằng lệnh sau:
Mã:
apt install ufw -y
Mã:
ufw allow 'Nginx Full'
ufw allow OpenSSH
ufw allow 4848/tcp
ufw allow 8080/tcp
Mã:
ufw enable
Mã:
ufw status
Mã:
Trạng thái: activeTo Action From-- ------ ----OpenSSH ALLOW AnywhereNginx Full ALLOW Anywhere8080/tcp ALLOW Bất kỳ nơi nào4848/tcp ALLOW Bất kỳ nơi nàoOpenSSH (v6) ALLOW Bất kỳ nơi nào (v6)Nginx Full (v6) ALLOW Bất kỳ nơi nào (v6)8080/tcp (v6) ALLOW Bất kỳ nơi nào (v6)4848/tcp (v6) ALLOW Bất kỳ nơi nào (v6)
Truy cập Giao diện web Glassfish
Bây giờ bạn có thể truy cập Glassfish bằng URL . Bạn sẽ thấy trang sau:Để truy cập giao diện quản trị Glassfish, hãy nhập URL . Bạn sẽ được chuyển hướng đến trang đăng nhập Glassfish:
Cung cấp tên người dùng quản trị, mật khẩu và nhấp vào nút Đăng nhập. Bạn sẽ thấy bảng điều khiển Glassfish trên trang sau:
Nhấp vào máy chủ ở ngăn bên trái. Bạn sẽ thấy trang thông tin chung.
Tại đây, bạn có thể khởi động, dừng và giám sát máy chủ Glassfish.
Nhấp vào Nút ở ngăn bên trái. Bạn sẽ thấy nút Glassfish trên trang sau.
Nhấp vào Ứng dụng ở ngăn bên trái. Bạn sẽ thấy tất cả các ứng dụng đã triển khai của mình trên trang sau.