Tomcat là một máy chủ ứng dụng miễn phí, mã nguồn mở và nhẹ được sử dụng để triển khai các ứng dụng dựa trên Java. Nó có thể được sử dụng như một máy chủ độc lập hoặc kết hợp với các máy chủ khác như Apache và Nginx. Nó cung cấp chức năng mở rộng để tương tác với Java Servlet và cũng triển khai một số thông số kỹ thuật của nền tảng Java. Hiện tại, Tomcat là một trong những máy chủ ứng dụng được sử dụng rộng rãi nhất cho Java.
Trong hướng dẫn này, tôi sẽ chỉ cho bạn cách cài đặt Tomcat 9 với Nginx trên Debian 10.
Sau khi bộ đệm gói hệ thống của bạn được cập nhật, bạn có thể tiến hành bước tiếp theo.
Sau khi Java được cài đặt, bạn có thể xác minh phiên bản Java bằng lệnh sau:
Bạn sẽ nhận được kết quả sau:
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.
Tiếp theo, tải xuống phiên bản Tomcat mới nhất bằng lệnh sau:
Sau khi tải xuống hoàn tất, giải nén tệp đã tải xuống bằng lệnh sau:
Tiếp theo, di chuyển thư mục đã giải nén đến /opt bằng lệnh sau:
Tiếp theo, thiết lập quyền và quyền sở hữu phù hợp bằng lệnh sau lệnh:
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:
Lưu và đóng tệp, sau đó tải lại daemon systemd bằng lệnh sau:
Tiếp theo, 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ũng có thể xác minh trạng thái của Tomcat bằng lệnh sau:
Bạn sẽ nhận được kết quả sau:
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.
Tìm phần và thêm hoặc sửa đổi các dòng sau:
Lưu và đóng tệp khi bạn hoàn tất.
Theo mặc định, giao diện web Tomcat được cấu hình để chỉ truy cập từ máy chủ cục bộ. Vì vậy, bạn sẽ cần cấu hình nó để truy cập bên ngoài.
Đối với ứng dụng Manager, hãy chỉnh sửa dòng sau:
Đối với ứng dụng Host Manager, hãy chỉnh sửa tệp sau:
Xóa dòng sau:
Lưu và đóng tệp, sau đó khởi động lại dịch vụ Tomcat để áp dụng các thay đổi:
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.
Sau khi Nginx đã được cài đặt, bạn sẽ cần tạo tệp cấu hình máy chủ ảo Nginx mới cho Tomcat. Bạn có thể tạo tệp này bằng lệnh sau:
Thêm các dòng sau:
Lưu và đóng tệp, sau đó xác minh Nginx xem có lỗi cú pháp nào không:
Bạn sẽ thấy kết quả sau:
Tiếp theo, khởi động lại dịch vụ Nginx để áp dụng các thay đổi:
Tiếp theo, xác minh trạng thái của dịch vụ Nginx bằng lệnh sau:
Bạn sẽ thấy kết quả sau:
Tại thời điểm này, Nginx được cấu hình để truy cập Tomcat. Bây giờ bạn có thể tiến hành bước tiếp theo.
Nhấp vào Ứng dụng Quản lý, bạn sẽ thấy trang sau:
Cung cấp tên người dùng, mật khẩu quản trị viên Ứng dụng quản lý của bạn và nhấp vào nút Đăng nhập. Bạn sẽ thấy trang sau:
Bạn cũng có thể nhấp vào Trình quản lý máy chủ để truy cập Ứng dụng quản lý máy chủ như hiển thị bên dưới:
Trong hướng dẫn này, tôi sẽ chỉ cho bạn cách cài đặt Tomcat 9 với Nginx trên Debian 10.
Điều kiện tiên quyết
- Một máy chủ chạy Debian 10.
- 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ủa bạn.
Bắt đầu
Trước khi bắt đầu, bạn nên cập nhật bộ đệm APT lên phiên bản mới nhất. Bạn có thể cập nhật bằng cách chạy lệnh sau:
Mã:
apt-get update -y
Cài đặt Java
Tomcat là ứ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 chưa cài đặt, bạn có thể cài đặt bằng lệnh sau:
Mã:
apt-get install default-jdk -y
Mã:
java --version
Mã:
openjdk 11.0.9.1 2020-11-04Môi trường chạy thời gian OpenJDK (bản dựng 11.0.9.1+1-post-Debian-1deb10u2)Máy ảo máy chủ OpenJDK 64-Bit (bản dựng 11.0.9.1+1-post-Debian-1deb10u2, chế độ hỗn hợp, chia sẻ)
Cài đặt Tomcat
Trước tiên, bạn sẽ cần tạo một người dùng chuyên dụng để chạy máy chủ Tomcat. Bạn có thể tạo nó bằng lệnh sau:
Mã:
useradd -m -U -d /opt/tomcat -s /bin/false tomcat
Mã:
wget https://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.45/bin/apache-tomcat-9.0.45.tar.gz
Mã:
tar -xvzf apache-tomcat-9.0.45.tar.gz
Mã:
mv apache-tomcat-9.0.45 /opt/tomcat/tomcat
Mã:
chown -R tomcat:tomcat /opt/tomcat/tomcat
chmod -R 755 /opt/tomcat/tomcat
Tạo tệp dịch vụ Systemd cho Tomcat
Tiếp theo, bạn sẽ cần tạo tệp dịch vụ systemd để quản lý dịch vụ Tomcat. Bạn có thể tạo nó bằng lệnh sau:
Mã:
nano /etc/systemd/system/tomcat.service
Mã:
[Unit]Description=Tomcat 9.0 servlet containerAfter=network.target[Service]Type=forkingUser=tomcatGroup=tomcatEnvironment="JAVA_HOME=/usr/lib/jvm/default-java"Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"Environment="CATALINA_BASE=/opt/tomcat/tomcat"Environment="CATALINA_HOME=/opt/tomcat/tomcat"Environment="CATALINA_PID=/opt/tomcat/tomcat/temp/tomcat.pid"Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"ExecStart=/opt/tomcat/tomcat/bin/startup.shExecStop=/opt/tomcat/tomcat/bin/shutdown.sh[Cài đặt]WantedBy=multi-user.target
Mã:
systemctl daemon-reload
Mã:
systemctl start tomcat
systemctl enable tomcat
Mã:
systemctl status tomcat
Mã:
? tomcat.service - Bộ chứa servlet Tomcat 9.0 Đã tải: đã tải (/etc/systemd/system/tomcat.service; vô hiệu hóa; 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ừ Thứ 4, ngày 14 tháng 4 năm 2021 lúc 05:41:21 UTC; 42 giây trước Tiến trình: 5784 ExecStart=/opt/tomcat/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS) PID chính: 5791 (java) Nhiệm vụ: 30 (giới hạn: 4701) Bộ nhớ: 159,1M CGroup: /system.slice/tomcat.service ??5791 /usr/lib/jvm/default-java/bin/java -Djava.util.logging.config.file=/opt/tomcat/tomcat/conf/logging.properties -Djava.util.log14/04 05:41:21 debian systemd[1]: Đang khởi động bộ chứa servlet Tomcat 9.0...14/04 05:41:21 debian startup.sh[5784]: Đã khởi động Tomcat.14/04 05:41:21 debian systemd[1]: Đã khởi động bộ chứa servlet Tomcat 9.0.
Cấu hình Giao diện Web Tomcat
Tiếp theo, bạn sẽ cần định nghĩa người dùng để truy cập giao diện web Tomcat. Bạn có thể định nghĩa người dùng đó bằng tệp tomcat-users.xml:
Mã:
nano /opt/tomcat/tomcat/conf/tomcat-users.xml
Mã:
Theo mặc định, giao diện web Tomcat được cấu hình để chỉ truy cập từ máy chủ cục bộ. Vì vậy, bạn sẽ cần cấu hình nó để truy cập bên ngoài.
Đối với ứng dụng Manager, hãy chỉnh sửa dòng sau:
Mã:
nano /opt/tomcat/tomcat/webapps/manager/META-INF/context.xml
Mã:
nano /opt/tomcat/tomcat/webapps/host-manager/META-INF/context.xml
Mã:
Mã:
systemctl restart tomcat
Cấu hình Nginx cho Tomcat
Tiếp theo, bạn sẽ cần cài đặt và cấu hình Nginx làm proxy ngược cho Tomcat. Trước tiên, hãy cài đặt gói 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; root /opt/tomcat/tomcat/webapps/; vị trí / { 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: 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ừ Thứ 4, ngày 14 tháng 4 năm 2021 lúc 05:57:03 UTC; 1 phút 38 giây trước Tài liệu: man:nginx(8) Tiến trình: 6852 ExecStartPre=/usr/sbin/nginx -t -q -g daemon đang bật; master_process đang bật; (code=exited, status=0/SUCCESS) Tiến trình: 6853 ExecStart=/usr/sbin/nginx -g daemon đang bật; master_process đang bật; (code=exited, status=0/SUCCESS) PID chính: 6854 (nginx) Nhiệm vụ: 3 (giới hạn: 4701) Bộ nhớ: 4.0M CGroup: /system.slice/nginx.service ??6854 nginx: tiến trình chính /usr/sbin/nginx -g daemon bật; master_process bật; ??6855 nginx: tiến trình công nhân ??6856 nginx: tiến trình công nhân14/04 05:57:03 debian systemd[1]: Đang khởi động Một máy chủ web hiệu suất cao và một máy chủ proxy ngược...14/04 05:57:03 debian systemd[1]: Đã khởi động Một máy chủ web hiệu suất cao và một máy chủ proxy ngược.
Truy cập Tomcat Web UI
Bây giờ, hãy mở trình duyệt web của bạn và truy cập Tomcat web UI bằng URL . Bạn sẽ thấy trang sau:Nhấp vào Ứng dụng Quản lý, bạn sẽ thấy trang sau:
Cung cấp tên người dùng, mật khẩu quản trị viên Ứng dụng quản lý của bạn và nhấp vào nút Đăng nhập. Bạn sẽ thấy trang sau:
Bạn cũng có thể nhấp vào Trình quản lý máy chủ để truy cập Ứng dụng quản lý máy chủ như hiển thị bên dưới: