Apache Tomcat is a widely used open-source Java Servlet container developed by the Apache Software Foundation. It allows developers to deploy and run Java applications with ease. In this guide, we will discuss how to set up Apache Tomcat on Arch Linux.
Prerequisites
Before we begin, make sure you have the following:
- A running Arch Linux system.
- A user account with sudo privileges.
- Basic knowledge of the command line.
How to Set Up Apache Tomcat on Arch Linux
Update Your System
Start by updating your Arch Linux system to ensure you have the latest packages installed. Open the terminal and enter the following command:
sudo pacman -Syu
Install Java Development Kit (JDK) on Arch Linux
Apache Tomcat requires a Java Development Kit (JDK) to function properly. In this tutorial, we’ll install OpenJDK, an open-source implementation of the Java Platform. To install OpenJDK, run the following command:
sudo pacman -S jdk-openjdk
After the installation, verify that the JDK has been installed correctly by checking its version:
java -version
Install Apache Tomcat on Arch Linux
Now that we have the JDK installed, we can proceed to install Apache Tomcat. In Arch Linux, you can install Apache Tomcat using the AUR (Arch User Repository). First, install the Yay AUR helper if you haven’t already:
sudo pacman -S --needed git base-devel
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
Next, use Yay to install Apache Tomcat:
yay -S tomcat9
Once the installation is complete, you can check the Tomcat version by running:
/usr/share/tomcat9/bin/version.sh
Configure Apache Tomcat on Arch Linux
After installing Apache Tomcat, we need to configure it. To do this, create a new user and group for Tomcat:
sudo groupadd tomcat
sudo useradd -M -s /bin/nologin -g tomcat -d /usr/share/tomcat9 tomcat
Next, change the ownership of the Tomcat directory:
sudo chown -R tomcat:tomcat /usr/share/tomcat9
Now, create a new systemd service file for Apache Tomcat:
sudo nano /etc/systemd/system/tomcat9.service
Paste the following content into the file:
[Unit]
Description=Apache Tomcat 9 Servlet Container
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/java-16-openjdk"
Environment="CATALINA_HOME=/usr/share/tomcat9"
Environment="CATALINA_BASE=/usr/share/tomcat9"
Environment="CATALINA_PID=/usr/share/tomcat9/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
ExecStart=/usr/share/tomcat9/bin/startup.sh
ExecStop=/usr/share/tomcat9/bin/shutdown.sh
[Install]
WantedBy=multi-user.target
Save and close the file. Then, reload the systemd daemon and enable the Tomcat service:
sudo systemctl daemon-reload
sudo systemctl enable tomcat9
Finally, start the Apache Tomcat service:
sudo systemctl start tomcat9
You can check the status of the Tomcat service with the following command:
sudo systemctl status tomcat9
If everything is set up correctly, the service should be active and running.
Configure Firewall on Arch Linux
If you have a firewall enabled on your Arch Linux system, you may need to allow traffic on port 8080, which is the default port for Apache Tomcat. For example, if you’re using firewalld, you can run the following commands to open the port:
sudo firewall-cmd --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
Access Apache Tomcat Web Interface
Now that Apache Tomcat is running, you can access its web interface by opening a web browser and navigating to the following address:
http://localhost:8080/
You should see the Apache Tomcat default welcome page.
Set Up Tomcat Manager and Host Manager
The Tomcat Manager and Host Manager web applications can help you manage your Tomcat instance more efficiently. To set them up, edit the tomcat-users.xml
file:
sudo nano /usr/share/tomcat9/conf/tomcat-users.xml
Add the following lines just before the </tomcat-users>
closing tag:
<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="admin" password="your_password" roles="manager-gui,admin-gui"/>
Replace your_password
with a strong password of your choice. Save and close the file. Then, restart the Tomcat service:
sudo systemctl restart tomcat9
Now, you can access the Tomcat Manager and Host Manager web applications using the following URLs:
- Tomcat Manager:
http://localhost:8080/manager/html
- Host Manager:
http://localhost:8080/host-manager/html
Log in with the username “admin” and the password you set in the tomcat-users.xml
file.
Conclusion
Congratulations! You have successfully installed and configured Apache Tomcat on your Arch Linux system. You can now deploy and manage Java web applications using this powerful and versatile servlet container. Don’t forget to explore other useful tutorials on LinuxBoost to further enhance your Arch Linux experience.