Hướng dẫn cài đặt Apache Tomcat

30/12/2020

Khác với Apache, Apache Tomcat là một phần mềm web server giúp deploy các ứng dụng java web. Bài viết này sẽ hướng dẫn các bạn làm thế nào cài đặt apache tomcat trên Linux.

Mục lục

  1. Tổng quan
  2. Hướng dẫn cài đặt
  3. Tài liệu tham khảo

1. Tổng quan

Tomcat là một phần mềm máy chủ mã nguồn mở được phát triển bởi Apache Software Foundation (ASF). Tomcat được sử dụng để deploy các ứng dụng Java Web.

Trong bài này, mình sẽ hướng dẫn cài đặt bản Tomcat 9 trên máy ảo CentOS 7.

2. Hướng dẫn cài đặt

Bước 1: Cài đặt Java

Bạn cần cài đặt java SE 7.0 hoặc cao hơn để có thể cài Tomcat. Ở đây, mình cài môi trường OpenJDK Runtime bản 8. Trên terminal, gõ lệnh:

sudo yum -y install java-1.8.0-openjdk.x86_64 

Kiển tra version java đã cài:

java -version 

Bạn có thể thấy bản java đã cài là bản 8.

Bước 2: Tạo người dùng chuyên dụng Tomcat

Để bảo mật, bạn cần tạo người dùng mới không có quyền root cho Tomcat thuộc nhóm người dùng “tomcat”.

sudo groupadd tomcat sudo mkdir /opt/tomcat sudo useradd -s /bin/nologin -g tomcat -d /opt/tomcat tomcat 

Như vậy, người dùng “tomcat” được tạo thuộc nhóm “tomcat”. Người dùng này không dùng để đăng nhập và có thư mục chính nằm tại /opt/tomcat/.

Bước 3: Tải bản Tomcat mới nhất.

Để có thể tải Tomcat 9, bạn thực hiện như sau:

cd wget http://www-us.apache.org/dist/tomcat/tomcat-9/v9.0.22/bin/apache-tomcat-9.0.22.tar.gz 

Tiến hành giải nén:

sudo tar -zxvf apache-tomcat-9.0.22.tar.gz -C /opt/tomcat 

Lưu ý: thư mục chứa dữ liệu đã giải nén nằm tại /opt/tomcat.

Bước 4: Thiết lập quyền cho Tomcat

Trước khi tiến hành cài đặt, bạn cần trao quyền sở hữu cho một số file và thư mục như sau:

cd /opt/tomcat sudo chgrp -R tomcat conf sudo chmod g+rwx conf sudo chmod g+r conf/* sudo chown -R tomcat logs/ temp/ webapps/ work/  sudo chgrp -R tomcat bin sudo chgrp -R tomcat lib sudo chmod g+rwx bin sudo chmod g+r bin/* 

Bước 5: Thiết lập dịch vụ tomcat trong systemd

Để thuận tiện cho việc quản lí và kiểm tra, bạn cần thiết lập dịch vụ cho tomcat tại systemd.

sudo vi /etc/systemd/system/tomcat.service 

Tiến hành viết vào file đó như sau:

[Unit] Description=Apache Tomcat Web Application Container After=syslog.target network.target  [Service] Type=forking  Environment=JAVA_HOME=/usr/lib/jvm/jre Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid Environment=CATALINA_HOME=/opt/tomcat Environment=CATALINA_BASE=/opt/tomcat Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC' Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'  ExecStart=/opt/tomcat/bin/startup.sh ExecStop=/bin/kill -15 $MAINPID  User=tomcat Group=tomcat  [Install] WantedBy=multi-user.target 

Sau đó lưu và thoát khỏi chế độ edit :wq.

Bước 6: Khởi chạy và test Tomcat

Đầu tiên, ta cần khởi chạy và thiết lập nó chạy cùng với hệ thống:

systemctl start tomcat systemctl enable tomcat 

Đển có thể test nó trên web browser, bạn cần thay đổi thiết lập firewall:

sudo firewall-cmd --zone=public --permanent --add-port=8080/tcp sudo firewall-cmd --reload 

Mở trình duyệt lên, trên thanh url, gõ: <địa chỉ ip>:8080 Nếu mọi thứ không có lỗi, màn hình sẽ hiện ra như sau:

3. Tài liệu tham khảo

  1. Tomcat là gì?
  2. Hướng dẫn cài Tomcat trên CentOS 7
ONET IDC thành lập vào năm 2012, là công ty chuyên nghiệp tại Việt Nam trong lĩnh vực cung cấp dịch vụ Hosting, VPS, máy chủ vật lý, dịch vụ Firewall Anti DDoS, SSL… Với 10 năm xây dựng và phát triển, ứng dụng nhiều công nghệ hiện đại, ONET IDC đã giúp hàng ngàn khách hàng tin tưởng lựa chọn, mang lại sự ổn định tuyệt đối cho website của khách hàng để thúc đẩy việc kinh doanh đạt được hiệu quả và thành công.
Bài viết liên quan

Hướng dẫn cài đặt PHP 7.x trên CentOS7

Vì phiên bản PHP5.x đã sắp đến thời gian ngừng hỗ trợ, do vậy một số ứng cần yêu cầu PHP...
28/12/2020

[FTP][Phần 1]Tìm hiểu về giao thức FTP(File Transfer Protocol)

FTP(viết tắt của File Transfer Protocol) là một trong những giao thức Internet trên tầng ứng dụng....
30/12/2020

[NGINX] Thiết lập chứng nhận SSL miễn phí từ Let’s Encrypt cho các website

SSL là chữ viết tắt của Secure Sockets Layer (Lớp socket bảo mật) –...
30/12/2020