Apache Tomcat là một máy chủ web Java mã nguồn mở và là một bộ chứa Servlet được sử dụng để lưu trữ các ứng dụng web được viết bằng Java. Đây là lựa chọn đầu tiên của các nhà phát triển web để xây dựng và duy trì các trang web và ứng dụng động dựa trên nền tảng phần mềm Java. Đây là một dự án mã nguồn mở do Apache Software Foundation phát triển. Tomcat cho phép máy chủ web xử lý nội dung web động dựa trên Java.
Hướng dẫn này sẽ chỉ cho bạn cách cài đặt Apache Tomcat trên Ubuntu 22.04.
Sau khi Java được cài đặt, bạn có thể xác minh phiên bản Java bằng lệnh sau lệnh:
Bạn sẽ nhận được kết quả đầu ra sau:
Tiếp theo, tải xuống phiên bản mới nhất của Apache Tomcat bằng lệnh sau:
Sau khi tải xuống Apache Tomcat, hãy giải nén tệp đã tải xuống bên trong /opt thư mục:
Tiếp theo, thiết lập quyền sở hữu và quyền thích hợp cho thư mục Tomcat:
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.
Thêm các dòng sau phía trên dòng </tomcat-users>:
Lưu và đóng tệp khi bạn hoàn tất.
Để bật ứng dụng quản lý từ máy chủ từ xa, hãy chỉnh sửa tệp sau:
Xóa dòng sau:
Để bật ứng dụng quản lý máy chủ từ máy chủ từ xa, hãy chỉnh sửa tệp sau tệp:
Xóa dòng sau:
Lưu và đóng tệp khi bạn hoàn tất.
Thêm các dòng sau:
Lưu và đóng tệp sau đó tải lại daemon systemd để áp dụng thay đổi:
Tiếp theo, hãy khởi động dịch vụ Tomcat và cho phép nó khởi động khi khởi động lại hệ thống bằng lệnh sau:
Bạn có thể kiểm tra trạng thái của Apache Tomcat bằng lệnh sau:
Bạn sẽ nhận được thông báo sau đầu ra:
Lúc này, Tomcat đã được khởi động và lắng nghe trên cổng 8080. Bạn có thể kiểm tra bằng lệnh sau:
Bạn sẽ nhận được thông báo sau đầu ra:
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.
Sau khi máy chủ web Nginx được cài đặt, hãy tạo tệp cấu hình máy chủ ảo Nginx bằng lệnh sau:
Thêm nội dung sau dòng:
Lưu và đóng tệp sau đó xác minh Nginx xem có lỗi cú pháp nào không bằng lệnh sau:
Bạn sẽ nhận được thông báo sau đầu ra:
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 Nginx bằng cách sử dụng lệnh sau lệnh:
Bạn sẽ thấy kết quả sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22534%22%3E%3C/svg%3E
Nhấp vào Ứng dụng quản lý. Bạn sẽ được yêu cầu xác thực như hiển thị bên dưới:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22294%22%3E%3C/svg%3E
Cung cấp tên người dùng quản trị và mật khẩu, sau đó nhấp vào nút Đăng nhập. Bạn sẽ thấy bảng điều khiển Ứng dụng quản lý trên màn hình sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22371%22%3E%3C/svg%3E
Để truy cập ứng dụng Host Manager, hãy nhấp vào Host Manager. Bạn sẽ thấy màn hình sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22371%22%3E%3C/svg%3E
Nhấp vào ServerStatus. Bạn sẽ thấy trạng thái Apache Tomcat trên màn hình sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22371%22%3E%3C/svg%3E
Hướng dẫn này sẽ chỉ cho bạn cách cài đặt Apache Tomcat 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
Apache Tomcat là một ứng dụng dựa trên Java nên Java phải được cài đặt trên máy chủ của bạn. Nếu Java chưa được cài đặt, bạn có thể cài đặt bằng lệnh sau:
Mã:
apt install default-jdk -y
Mã:
java -version
Mã:
openjdk version "11.0.15" 2022-04-19
OpenJDK Runtime Environment (build 11.0.15+10-Ubuntu-0ubuntu0.22.04.1)
OpenJDK 64-Bit Server VM (build 11.0.15+10-Ubuntu-0ubuntu0.22.04.1, mixed mode, sharing)
Cài đặt Apache Tomcat trên Ubuntu 22.04
Đầu tiên, bạn nên chạy Tomcat dưới dạng người dùng riêng biệt. Bạn có thể tạo người dùng Tomcat bằng lệnh sau:
Mã:
useradd -m -d /opt/tomcat -U -s /bin/false tomcat
Mã:
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.0.20/bin/apache-tomcat-10.0.20.tar.gz
Mã:
tar xzvf apache-tomcat-10*tar.gz -C /opt/tomcat --strip-components=1
Mã:
chown -R tomcat:tomcat /opt/tomcat/
chmod -R u+x /opt/tomcat/bin
Tạo Người dùng quản trị Tomcat
Theo mặc định, có thể truy cập Tomcat mà không cần bất kỳ xác thực nào. Vì vậy, bạn nên bật xác thực và tạo người dùng quản trị cho Tomcat. Bạn có thể thêm nó bằng cách chỉnh sửa tệp cấu hình người dùng Tomcat:
Mã:
nano /opt/tomcat/conf/tomcat-users.xml
Mã:
Bật Tomcat Remote Truy cập
Theo mặc định, Tomcat được cấu hình để chỉ truy cập từ máy chủ cục bộ. Vì vậy, bạn nên bật quyền truy cập từ xa Tomcat để quản lý Tomcat từ máy chủ từ xa.Để bật ứng dụng quản lý từ máy chủ từ xa, hãy chỉnh sửa tệp sau:
Mã:
nano /opt/tomcat/webapps/manager/META-INF/context.xml
Mã:
Mã:
nano /opt/tomcat/webapps/host-manager/META-INF/context.xml
Mã:
Tạo tệp dịch vụ cho Apache Tomcat
Tiếp theo, bạn sẽ cần tạo tệp dịch vụ để quản lý dịch vụ Tomcat thông qua systemd. Bạn có thể tạo nó bằng lệnh sau:
Mã:
nano /etc/systemd/system/tomcat.service
Mã:
[Unit]
Description=Tomcat
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
[Install]
WantedBy=multi-user.target
Mã:
systemctl daemon-reload
Mã:
systemctl start tomcat
systemctl enable tomcat
Mã:
systemctl status tomcat
Mã:
? tomcat.service - Tomcat Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled) Active: active (running) since Fri 2022-04-29 08:11:54 UTC; 6s ago Process: 18959 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS) Main PID: 18966 (java) Tasks: 29 (limit: 4630) Memory: 116.4M CPU: 5.312s CGroup: /system.slice/tomcat.service ??18966 /usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties -Dja>
Apr 29 08:11:54 ubuntu systemd[1]: Starting Tomcat...
Apr 29 08:11:54 ubuntu startup.sh[18959]: Tomcat started.
Apr 29 08:11:54 ubuntu systemd[1]: Started Tomcat.
Mã:
ss -antpl | grep java
Mã:
LISTEN 0 1 [::ffff:127.0.0.1]:8005 *:* users:(("java",pid=18966,fd=53))
LISTEN 0 100 *:8080 *:* users:(("java",pid=18966,fd=43))
Cấu hình Nginx làm Proxy ngược cho Tomcat
Tiếp theo, bạn sẽ cần tạo Nginx làm proxy ngược cho Apache Tomcat. 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
Mã:
nano /etc/nginx/conf.d/tomcat.conf
Mã:
server { listen 80; server_name tomcat.example.com; access_log /var/log/nginx/tomcat-access.log; error_log /var/log/nginx/tomcat-error.log; 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://127.0.0.1:8080/; }
}
Mã:
nginx -t
Mã:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Mã:
systemctl restart nginx
Mã:
systemctl status nginx
Mã:
? nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2022-04-29 08:15:28 UTC; 8s ago Docs: man:nginx(8) Process: 19070 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Process: 19071 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 19072 (nginx) Tasks: 3 (limit: 4630) Memory: 3.3M CPU: 63ms CGroup: /system.slice/nginx.service ??19072 "nginx: master process /usr/sbin/nginx -g daemon on; master_process on;" ??19073 "nginx: worker process" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ??19074 "nginx: worker process" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ""
Apr 29 08:15:28 ubuntu systemd[1]: Starting A high performance web server and a reverse proxy server...
Apr 29 08:15:28 ubuntu systemd[1]: Started A high performance web server and a reverse proxy server.
Truy cập Apache Tomcat
Bây giờ, hãy mở trình duyệt web của bạn và truy cập giao diện web Apache Tomcat bằng URL . Bạn sẽ thấy bảng điều khiển Tomcat trên màn hình sau:data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22534%22%3E%3C/svg%3E
Nhấp vào Ứng dụng quản lý. Bạn sẽ được yêu cầu xác thực như hiển thị bên dưới:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22294%22%3E%3C/svg%3E
Cung cấp tên người dùng quản trị và mật khẩu, sau đó nhấp vào nút Đăng nhập. Bạn sẽ thấy bảng điều khiển Ứng dụng quản lý trên màn hình sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22371%22%3E%3C/svg%3E
Để truy cập ứng dụng Host Manager, hãy nhấp vào Host Manager. Bạn sẽ thấy màn hình sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22371%22%3E%3C/svg%3E
Nhấp vào ServerStatus. Bạn sẽ thấy trạng thái Apache Tomcat trên màn hình sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22371%22%3E%3C/svg%3E