Cách cài đặt Máy chủ ứng dụng WildFly JAVA trên Ubuntu 22.04

Tác giả Security+, T.Ba 29, 2024, 03:20:42 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Cách cài đặt Máy chủ ứng dụng WildFly JAVA trên Ubuntu 22.04


WildFly, trước đây là JBoss, là một máy chủ ứng dụng mã nguồn mở và miễn phí giúp bạn xây dựng và triển khai các ứng dụng web Java. Nó được viết bằng Java và tuân thủ các thông số kỹ thuật của Java EE (Phiên bản doanh nghiệp). WildFly được JBoss tạo ra nhưng hiện được RedHat phát triển. Nó là một máy chủ ứng dụng nhẹ, mô-đun và mạnh mẽ, sẵn sàng sản xuất, cung cấp tất cả các công cụ và tính năng cần thiết để chạy và triển khai các ứng dụng web Java.


WildFly là một máy chủ ứng dụng đa nền tảng. Nó cung cấp các công cụ như EJB, JPA, Servlets, JAX-RS, Batch và bảo mật cho các ứng dụng Java của bạn.

Hướng dẫn này sẽ giúp bạn cài đặt WildFly trên máy chủ Ubuntu 22.04. Bạn sẽ cài đặt WildFly theo cách thủ công từ gói nhị phân trên hệ thống Ubuntu.

1. Điều kiện tiên quyết

Để hoàn thành hướng dẫn này, bạn sẽ cần Máy chủ Ubuntu 22.04. Máy chủ này phải có người dùng không phải root với đặc quyền root/quản trị viên. Ngoài ra, bạn nên bật tường lửa " UFW " trên hệ thống Ubuntu của mình.

2. Cài đặt Java OpenJDK

Trước khi bắt đầu cài đặt WildFly, trước tiên bạn sẽ cài đặt Java OpenJDK trên máy chủ Ubuntu của mình. Tại thời điểm viết bài này, phiên bản mới nhất của WildFly yêu cầu ít nhất Java v8. Kho lưu trữ Ubuntu APT mặc định cung cấp Java v11, phù hợp với phiên bản cài đặt WildFly mới nhất.

Chạy lệnh " apt " bên dưới để cập nhật và làm mới chỉ mục gói Ubuntu của bạn.

Mã nguồn [Chọn]
sudo apt update
Để cài đặt Java OpenJDK, hãy chạy lệnh " apt install " bên dưới. Bạn sẽ được nhắc xác nhận cài đặt, nhập Y và nhấn ENTER để tiếp tục và quá trình cài đặt Java OpenJDK sẽ bắt đầu.

Mã nguồn [Chọn]
sudo apt install default-jdk

Bây giờ Java OpenJDK đã được cài đặt, hãy kiểm tra và xác minh phiên bản Java bằng lệnh sau. Bạn sẽ thấy Java OpenJDK 11 đã được cài đặt trên máy chủ Ubuntu 22.04 của bạn.

Mã nguồn [Chọn]
java -version

3. Cài đặt WildFly từ tệp nhị phân

Sau khi cài đặt Java, bạn sẽ cài đặt WildFly theo cách thủ công trên máy chủ Ubuntu của mình. Quá trình cài đặt WildFly thủ công yêu cầu bạn thiết lập người dùng hệ thống mới, tải xuống Gói nhị phân WildFLy và thiết lập thư mục cấu hình và dịch vụ systemd cho WildFly.

Để tạo người dùng hệ thống mới, hãy chạy lệnh " useradd " bên dưới.

Trong ví dụ sau, người dùng hệ thống mới sẽ được đặt tên là " Wildfly " với thư mục chính cơ sở " /opt/wildfly ". Thư mục này cũng sẽ được sử dụng làm thư mục cài đặt chính cho WildFly.

Mã nguồn [Chọn]
sudo useradd -r -d /opt/wildfly -s /usr/sbin/nologin wildfly
Trước khi tải xuống gói nhị phân WildFly, hãy chạy lệnh sau để tạo biến môi trường tạm thời mới " WILDFLY_RELEASE ". Điều này sẽ gán biến môi trường " WILDFLY_RELEASE " với bản phát hành mới nhất của phiên bản WildFly. Tại thời điểm viết bài này, phiên bản mới nhất của WildFly là v26.x.

Mã nguồn [Chọn]
WILDFLY_RELEASE=$(curl -s https://api.github.com/repos/wildfly/wildfly/releases/latest|grep tag_name|cut -d '"' -f 4)
echo $WILDFLY_RELEASE

Để tải xuống Gói nhị phân WildFly, hãy chạy lệnh " wget " bên dưới. Bạn sẽ thấy tệp mới trong thư mục hiện tại của bạn.

Mã nguồn [Chọn]
wget https://github.com/wildfly/wildfly/releases/download/${WILDFLY_RELEASE}/wildfly-${WILDFLY_RELEASE}.tar.gz

Tiếp theo, giải nén gói WildFLy bằng lệnh " tar " bên dưới. Sau đó, di chuyển thư mục WildFly mới được giải nén sang "/opt/wildfly".

Mã nguồn [Chọn]
tar -xvf wildfly-${WILDFLY_RELEASE}.tar.gz
sudo mv wildfly-${WILDFLY_RELEASE} /opt/wildfly

Đặt quyền sở hữu chính xác và phù hợp đối với thư mục cài đặt WldFly cho người dùng " wildfly " bằng lệnh bên dưới.

Mã nguồn [Chọn]
sudo chown -R wildfly:wildfly /opt/wildfly
Sau đó, tạo thư mục cấu hình mặc định mới " /etc/wildfly " bằng lệnh sau. Sau đó, sao chép ví dụ về tệp cấu hình WildFly vào đó.

Mã nguồn [Chọn]
sudo mkdir -p /etc/wildfly/
sudo cp sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.conf /etc/wildfly/

Chỉnh sửa tệp cấu hình WildFly mặc định " /etc/wildfly/wildfly.conf " bằng lệnh bên dưới.

Mã nguồn [Chọn]
sudo nano /etc/wildfly/wildfly.conf
Bạn có thể thay đổi địa chỉ " WILDFLY_BIND " thành địa chỉ IP máy chủ cục bộ của mình. Ngoài ra, trong phần trình diễn này, bạn sẽ chạy WildFly ở chế độ " Standalone " với tệp cấu hình " Standalone.xml ".

Mã nguồn [Chọn]
# The configuration you want to run
WILDFLY_CONFIG=standalone.xml
# The mode you want to run
WILDFLY_MODE=standalone

# The address to bind to
WILDFLY_BIND=192.168.5.10

Lưu và đóng tập tin khi bạn hoàn tất.

Tiếp theo, sao chép ví dụ về tập lệnh khởi động WildFly "/opt/wildfly/docs/contrib/scripts/systemd/launch.sh " vào thư mục " /opt/wildfly/bin/ ". Sau đó, sao chép tệp dịch vụ WildFly systemd " /opt/wildfly/docs/contrib/scripts/systemd/wildfly.service " vào thư mục "/usr/lib/systemd/system/".

Mã nguồn [Chọn]
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/launch.sh /opt/wildfly/bin/
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.service /usr/lib/systemd/system/


Ngoài ra, bạn cũng cần tạo một thư mục mới " /var/run/wildfly " sẽ được sử dụng để lưu trữ tệp PID (Process ID) của máy chủ WildFly. Ngoài ra, hãy đảm bảo thay đổi quyền sở hữu chính xác của thư mục đó cho người dùng "wildfly".

Mã nguồn [Chọn]
sudo mkdir /var/run/wildfly/
sudo chown -R wildfly:wildfly /var/run/wildfly/

Bây giờ hãy chạy lệnh " systemctl " bên dưới để tải lại trình quản lý systemd và áp dụng tệp dịch vụ WildFly mới.

Mã nguồn [Chọn]
sudo systemctl daemon-reload
Sau đó, khởi động và kích hoạt dịch vụ " wildfly " bằng lệnh " systemctl " sau. Và dịch vụ " wildfly " sẽ được thiết lập và chạy và nó sẽ tự động chạy khi khởi động hệ thống.

Mã nguồn [Chọn]
sudo systemctl start wildfly
sudo systemctl enable wildfly


Để kiểm tra và xác minh trạng thái dịch vụ " Wildfly ", hãy chạy lệnh bên dưới. Và bạn sẽ thấy dịch vụ "wildfly" đã được " bật " và trạng thái hiện tại là "đang chạy".

Mã nguồn [Chọn]
sudo systemctl status wildfly

Theo mặc định, WildFly chạy trên cổng TCP "8080." Bạn phải mở cổng đó nếu bạn đã bật tường lửa "UFW" trên máy chủ của mình.

Chạy lệnh " ufw " bên dưới để mở cổng TCP " 8080 " cho WildFly. Sau đó, kiểm tra và xác minh trạng thái tường lửa UFW. Bạn sẽ thấy cổng "8080" đã được thêm vào.

Mã nguồn [Chọn]
sudo ufw allow 8080/tcp
sudo ufw status


Mở trình duyệt web của bạn và truy cập địa chỉ IP của máy chủ có cổng "8080" (ví dụ:   Đăng nhập để xem liên kết). Bạn sẽ thấy trang index.html mặc định của WildFly.


4. Thiết lập người dùng quản trị WildFly

Quản trị WildFly bị tắt khi cài đặt mặc định. Trong bản demo này, bạn sẽ kích hoạt bảng điều khiển Quản trị WildFly cho phép bạn thiết lập triển khai ứng dụng, cấu hình thời gian chạy, kiểm soát truy cập và các cài đặt WildFly khác.

Bạn sẽ thiết lập người dùng quản trị mới cho WildFly trước khi bắt đầu định cấu hình và kích hoạt quản trị WildFly.

Chạy tập lệnh thêm người dùng WildFly "/opt/wildfly/bin/add-user.sh" với tư cách là người dùng " Wildfly " bên dưới.

Mã nguồn [Chọn]
sudo -u wildfly /opt/wildfly/bin/add-user.sh
Bây giờ bạn sẽ được nhắc cấu hình người dùng quản trị viên bên dưới:

  • Nhập " a " để thiết lập WildFly " Người dùng quản lý ".
  • Nhập tên người dùng cho quản trị viên WildFly. Trong bản demo này, chúng tôi sẽ sử dụng người dùng quản trị " alice ".
  • Nhập mật khẩu cho người dùng quản trị viên mới và lặp lại. Đảm bảo sử dụng mật khẩu mạnh theo khuyến nghị của tập lệnh.
  • Để cấu hình nhóm như mặc định và nhấn ENTER.
  • Nhập " có " để xác nhận cấu hình quản trị viên WildFly mới.
  • Cuối cùng, nhập lại " có " để cho phép người dùng mới được sử dụng để xác định một quy trình WildFly hoặc bạn chỉ có thể nhập "không" cho cài đặt này.


5. Kích hoạt Bảng điều khiển quản trị WildFly

Nếu bạn đã tạo người dùng quản trị viên WildFly thì bây giờ bạn sẽ thiết lập bảng điều khiển Quản trị WildFly thông qua tệp cấu hình " /etc/wildfly/wildfly.conf ".

Chỉnh sửa tệp cấu hình " /etc/wildfly/wildfly.conf " bằng lệnh sau.

Mã nguồn [Chọn]
sudo nano /etc/wildfly/wildfly.conf
Thêm cấu hình sau vào tập tin. Điều này sẽ tạo một biến môi trường mới cho dịch vụ WildFly có tên " WILDFLY_CONSOLE_BIND ", biến này sẽ chạy bảng điều khiển quản trị WildFly trên địa chỉ IP nội bộ " 192.168.5.10 ".

Mã nguồn [Chọn]
# IP Address for WildFly Console
WILDFLY_CONSOLE_BIND=192.168.5.10

Lưu và đóng tập tin khi bạn hoàn tất.

Tiếp theo, chỉnh sửa tập lệnh khởi động WildFly "/opt/wildfly/bin/launch.sh " bằng lệnh sau.

Mã nguồn [Chọn]
sudo nano /opt/wildfly/bin/launch.sh
Thay đổi lệnh bắt đầu như dưới đây. Thêm tùy chọn " -bmanagement $4 " để bật bảng điều khiển quản trị WildFly.

Mã nguồn [Chọn]
if [[ "$1" == "domain" ]]; then
    $WILDFLY_HOME/bin/domain.sh -c $2 -b $3 -bmanagement $4
else
    $WILDFLY_HOME/bin/standalone.sh -c $2 -b $3 -bmanagement $4
fi

Lưu và đóng tập tin khi bạn hoàn tất.

Bây giờ hãy chỉnh sửa tệp dịch vụ WildFly systemd " /usr/lib/systemd/system/wildfly.service " bằng lệnh sau.

Mã nguồn [Chọn]
sudo nano /usr/lib/systemd/system/wildfly.service
Thêm biến môi trường " $WILDFLY_CONSOLE_BIND " làm tùy chọn lệnh bổ sung trên " ExecStart " như sau.

Mã nguồn [Chọn]
ExecStart=/opt/wildfly/bin/launch.sh $WILDFLY_MODE $WILDFLY_CONFIG $WILDFLY_BIND $WILDFLY_CONSOLE_BIND
Lưu và đóng tập tin khi bạn hoàn tất.

Sau khi chỉnh sửa tệp dịch vụ systemd WildFly, hãy chạy lệnh " systemctl " bên dưới để tải lại trình quản lý systemd. Sau đó, khởi động lại dịch vụ " wildfly " để áp dụng các thay đổi mới và kích hoạt bảng điều khiển quản trị.

Mã nguồn [Chọn]
sudo systemctl daemon-reload
sudo systemctl restart wildfly

Bây giờ hãy kiểm tra và xác minh dịch vụ " wildfly " bằng lệnh " systemctl " bên dưới. Và bạn sẽ nhận được dịch vụ " wildfly " đang " đang chạy ". Trên tập lệnh bắt đầu "   Đăng nhập để xem liên kết " và "   Đăng nhập để xem liên kết " bạn sẽ thấy các tùy chọn bổ sung để bật Bảng điều khiển quản trị.

Mã nguồn [Chọn]
sudo systemctl status wildfly

Quản trị WildFly mặc định đang chạy trên cổng TCP " 9990 ". Để cho phép truy cập vào nó, bạn sẽ cần thêm quy tắc tường lửa UFW.

Chạy lệnh " ufw " bên dưới để thêm quy tắc tường lửa UFW nhằm mở cổng bảng điều khiển quản trị WildFly " 9990 ". Sau đó, kiểm tra và xác minh trạng thái tường lửa UFW.

Mã nguồn [Chọn]
sudo ufw allow 9990/tcp
sudo ufw status

Bạn sẽ thấy kết quả tương tự như ảnh chụp màn hình sau.


Cuối cùng, quay lại trình duyệt web của bạn và truy cập địa chỉ IP của máy chủ, theo sau là cổng " 9990 " (tức là:   Đăng nhập để xem liên kết ). Và bạn sẽ được nhắc nhập người dùng và mật khẩu quản trị viên WildFly.

Nhập người dùng và mật khẩu quản trị viên WildFly của bạn, sau đó nhấp vào nút " Đăng nhập ".


Nếu người dùng và mật khẩu của bạn chính xác, bạn sẽ thấy trang Bảng điều khiển quản trị WildFly bên dưới.


6. Triển khai ứng dụng lên WildFly

Bây giờ bạn sẽ triển khai ứng dụng ví dụ "Hello World" cho WildFly. Bạn có thể triển khai một ứng dụng từ bảng điều khiển quản trị WildFly hoặc sử dụng chế độ giao diện dòng lệnh.

Tạo một thư mục mới "/opt/testapp" và tải xuống ứng dụng mẫu " helloworld.war " bằng cách sử dụng lệnh " curl " bên dưới.

Mã nguồn [Chọn]
mkdir -p /opt/testapp/
curl --output /opt/testapp/helloworld.war https://raw.githubusercontent.com/aeimer/java-example-helloworld-war/master/dist/helloworld.war


Tiếp theo, chạy tập lệnh "   Đăng nhập để xem liên kết " để kết nối với quản trị WildFly của bạn từ dòng lệnh.

Mã nguồn [Chọn]
sudo -u wildfly /opt/wildfly/bin/jboss-cli.sh --connect
Sau khi bạn kết nối với WildFly shell, hãy chạy lệnh sau để triển khai ứng dụng mẫu " /opt/testapp/helloworld.w ar" cho WildFly.

Mã nguồn [Chọn]
deploy /opt/testapp/helloworld.war
Cuối cùng, quay lại trình duyệt web của bạn và truy cập địa chỉ IP máy chủ của bạn bằng đường dẫn sau " /helloworld " (tức là:   Đăng nhập để xem liên kết). Và bạn sẽ lấy được ứng dụng ví dụ "helloworld.war".


Xin chúc mừng! Bây giờ bạn đã cài đặt thành công WildFly trên máy chủ Ubuntu 22.04 bằng cách sử dụng cài đặt thủ công từ Gói nhị phân. Bạn cũng đã tạo người dùng quản trị viên cho WildFly và bật Bảng điều khiển quản trị dựa trên web cho WildFly. Cuối cùng, bạn cũng đã học được cách triển khai một ứng dụng lên WildFly từ giao diện dòng lệnh.