Apache Tomcat adalah open-source dan server aplikasi web paling populer yang digunakan untuk meng-host aplikasi berbasis Java. Muncul dengan Java Servlet, JavaServer Pages (JSP), Java EL, dan menyediakan lingkungan untuk menjalankan kode Java. Tomcat menawarkan serangkaian fitur yang kaya termasuk, ringan, sangat fleksibel, terdokumentasi dengan baik, menawarkan tingkat keamanan ekstra, matang, dan banyak lagi.
Dalam tutorial ini, kami akan menjelaskan cara menginstal Apache Tomcat 10 di server Debian 10.
Prasyarat
- Server yang menjalankan Debian 10.
- Nama domain valid yang ditunjukkan dengan IP server Anda.
- Kata sandi root dikonfigurasi di server.
Memulai
Sebelum memulai, perbarui paket sistem Anda ke versi terbaru dengan perintah berikut:
apt-get update -y
Setelah semua paket diperbarui, Anda dapat melanjutkan ke langkah berikutnya.
Instal Java
Apache Tomcat adalah aplikasi berbasis Java. Jadi, Anda perlu menginstal Java di server Anda. Anda dapat menginstal Java dengan perintah berikut:
apt-get install default-jdk -y
Setelah instalasi, verifikasi versi Java menggunakan perintah di bawah ini:
java --version
Output berikut akan menunjukkan versi Java yang terinstal di server Anda.
openjdk 11.0.11 2021-04-20 OpenJDK Runtime Environment (build 11.0.11+9-post-Debian-1deb10u1) OpenJDK 64-Bit Server VM (build 11.0.11+9-post-Debian-1deb10u1, mixed mode, sharing)
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Instal Apache Tomcat
Pada saat penulisan tutorial ini, versi terbaru Apache Tomcat yang tersedia adalah 10.0.7.
Pertama, tambahkan pengguna untuk menjalankan Apache Tomcat menggunakan perintah berikut:
useradd -m -d /opt/tomcat -U -s /bin/false tomcat
Selanjutnya, unduh Apache Tomcat 10 menggunakan perintah berikut:
wget https://mirrors.estointernet.in/apache/tomcat/tomcat-10/v10.0.7/bin/apache-tomcat-10.0.7.tar.gz
Setelah unduhan selesai, ekstrak file yang diunduh ke direktori /opt/tomcat menggunakan perintah berikut:
tar -xzvf apache-tomcat-10.0.7.tar.gz -C /opt/tomcat --strip-components=1
Selanjutnya, atur kepemilikan yang tepat ke direktori /opt/Tomcat menggunakan perintah berikut:
chown -R tomcat:tomcat /opt/tomcat/
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Buat Pengguna Admin Web Tomcat
Selanjutnya, Anda perlu membuat pengguna admin untuk mengakses antarmuka admin Tomcat. Anda dapat membuatnya dengan mengedit file Tomcat-users.xml:
nano /opt/tomcat/conf/tomcat-users.xml
Tambahkan baris berikut sebelum baris terakhir:
<role rolename="manager-gui" /> <user username="manager" password="pasword" roles="manager-gui" /> <role rolename="admin-gui" /> <user username="admin" password="password" roles="manager-gui,admin-gui" />
Simpan dan tutup file setelah Anda selesai. Sekarang Anda dapat melanjutkan ke langkah berikutnya.
Izinkan Akses Jarak Jauh Tomcat
Secara default, Tomcat dikonfigurasi untuk mengakses hanya dari sistem lokal. Jadi, Anda perlu mengonfigurasi Tomcat agar dapat diakses dari sistem jarak jauh.
Pertama, edit context.xml file untuk memungkinkan akses jarak jauh ke aplikasi manajer Tomcat:
nano /opt/tomcat/webapps/manager/META-INF/context.xml
Hapus atau beri komentar pada baris berikut:
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
Simpan dan tutup file kemudian edit context.xml file untuk mengizinkan akses jarak jauh ke aplikasi manajer host Tomcat:
nano /opt/tomcat/webapps/host-manager/META-INF/context.xml
Hapus baris berikut:
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
Simpan dan tutup file setelah Anda selesai. Sekarang Anda dapat melanjutkan ke langkah berikutnya.
Buat File Unit Systemd untuk Tomcat
Selanjutnya, Anda perlu membuat file unit systemd untuk mengelola layanan Tomcat. Anda dapat membuatnya dengan perintah berikut:
nano /etc/systemd/system/tomcat.service
Tambahkan baris berikut:
[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
Simpan dan tutup file, lalu muat ulang daemon systemd untuk menerapkan perubahan:
systemctl daemon-reload
Selanjutnya, mulai layanan Tomcat dan aktifkan untuk memulai pada sistem reboot dengan perintah berikut:
systemctl start tomcat
systemctl enable tomcat
Anda sekarang dapat memeriksa status layanan Tomcat menggunakan perintah berikut:
systemctl status tomcat
Anda akan mendapatkan output berikut:
? tomcat.service - Tomcat Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled) Active: active (running) since Thu 2021-07-01 04:58:39 UTC; 15s ago Process: 5706 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS) Main PID: 5713 (java) Tasks: 29 (limit: 2359) Memory: 154.7M CGroup: /system.slice/tomcat.service ??5713 /usr/lib/jvm/java-1.11.0-openjdk-amd64/bin/java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties -Djava.ut Jul 01 04:58:39 tomcat systemd[1]: Starting Tomcat... Jul 01 04:58:39 tomcat startup.sh[5706]: Tomcat started. Jul 01 04:58:39 tomcat systemd[1]: Started Tomcat.
Pada titik ini, Tomcat dimulai dan mendengarkan pada port 8080. Anda dapat memeriksanya dengan perintah berikut:
ss -antpl | grep 8080
Anda akan mendapatkan output berikut:
LISTEN 0 100 *:8080 *:* users:(("java",pid=5713,fd=43))
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Konfigurasi Nginx untuk Tomcat
Selanjutnya, disarankan untuk menggunakan Nginx sebagai reverse proxy untuk mengakses aplikasi Tomcat.
Pertama, instal server web Nginx menggunakan perintah berikut:
apt-get install nginx -y
Setelah Nginx diinstal, buat file konfigurasi virtual host Nginx baru:
nano /etc/nginx/conf.d/tomcat.conf
Tambahkan baris berikut:
server { listen 80; server_name tomcat.example.com; access_log /var/log/nginx/access.log; error_log /var/log/nginx/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/; } }
Simpan dan tutup file setelah Anda selesai kemudian verifikasi Nginx untuk kesalahan sintaks dengan perintah berikut:
nginx -t
Anda akan mendapatkan output berikut:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Selanjutnya, restart Nginx untuk menerapkan perubahan:
systemctl restart nginx
Anda juga dapat memeriksa status layanan Nginx menggunakan perintah berikut:
systemctl status nginx
Jika semuanya baik-baik saja, Anda akan melihat output berikut:
? 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 Thu 2021-07-01 05:00:32 UTC; 6s ago Docs: man:nginx(8) Process: 6322 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Process: 6323 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 6324 (nginx) Tasks: 2 (limit: 2359) Memory: 2.7M CGroup: /system.slice/nginx.service ??6324 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; ??6325 nginx: worker process Jul 01 05:00:32 tomcat systemd[1]: Starting A high performance web server and a reverse proxy server... Jul 01 05:00:32 tomcat systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument Jul 01 05:00:32 tomcat systemd[1]: Started A high performance web server and a reverse proxy server.
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Akses Aplikasi Tomcat
Sekarang, buka browser web Anda dan akses aplikasi Tomcat menggunakan URL http://tomcat.example.com . Anda akan diarahkan ke halaman berikut:
Klik Kelola Aplikasi . Anda akan melihat halaman login Aplikasi Manajer:
Berikan nama pengguna, kata sandi admin Anda, dan klik Masuk tombol. Anda akan melihat dasbor Aplikasi Manajer di halaman berikut:
Untuk mengakses Pengelola Host, klik Pengelola Host dari halaman beranda Tomcat. Anda akan melihat halaman login Tomcat Host Manager:
Berikan nama pengguna, kata sandi admin Anda, dan klik Masuk tombol. Anda akan melihat dasbor Tomcat Host Manager di halaman berikut:
Kesimpulan
Selamat! Anda telah berhasil menginstal Apache Tomcat 10 di server Debian 10. Anda sekarang dapat membuat aplikasi Java dan menghostingnya menggunakan Apache Tomcat. Jangan ragu untuk bertanya kepada saya jika Anda memiliki pertanyaan.