نصب Apache Tomcat در لینوکس (اوبونتو و AlmaLinux)
آپاچی تامکت (Apache Tomcat) یکی از پراستفادهترین سرورهای وب و کانتینرهای سرولت (Servlet Container) در دنیای جاوا است. این نرمافزار که توسط بنیاد آپاچی توسعه داده شده، بستری قدرتمند برای اجرای اپلیکیشنهای وب نوشته شده با جاوا فراهم میکند و به عنوان وبسرور پیشفرض در فریمورک محبوب Spring Boot نیز استفاده میشود.
این راهنما به شما روش صحیح و استاندارد نصب آخرین نسخه Tomcat 11 را روی سرورهای لینوکس مدرن مانند اوبونتو، دبیان، AlmaLinux و Rocky Linux آموزش میدهد.
پیشنیازها
- یک سرور مجازی با یکی از سیستمعاملهای ذکر شده.
- دسترسی به سرور با یک کاربر دارای دسترسی
sudo
. - Java Development Kit (JDK) نسخه 17 یا بالاتر (نیازمندی رسمی Tomcat 11).
قدم اول: نصب Java (JDK 17)
تامکت 11 برای اجرا شدن به نسخه 17 جاوا یا جدیدتر نیاز دارد. ابتدا باید OpenJDK 17 را روی سرور خود نصب کنید.
برای اوبونتو و دبیان:
sudo apt update
sudo apt install openjdk-17-jdk -y
برای AlmaLinux، Rocky Linux و CentOS Stream:
sudo dnf install java-17-openjdk-devel -y
پس از نصب، با دستور java -version
از نصب صحیح آن اطمینان حاصل کنید.
قدم دوم: ایجاد کاربر اختصاصی برای Tomcat
برای افزایش امنیت، هرگز نباید تامکت را با کاربر root
اجرا کرد. ما یک کاربر سیستمی جدید به نام tomcat
ایجاد میکنیم که فقط برای اجرای این سرویس استفاده خواهد شد.
sudo groupadd tomcat
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
قدم سوم: دانلود و نصب Tomcat 11
ما آخرین نسخه Tomcat 11 را مستقیما از وبسایت رسمی آپاچی دانلود میکنیم.
- به صفحه دانلود رسمی Tomcat 11 مراجعه کرده و لینک فایل
tar.gz
را از بخش “Core” کپی کنید. - با استفاده از
curl
یاwget
آن را در دایرکتوری/tmp
دانلود کنید (لینک را با جدیدترین نسخه جایگزین کنید):cd /tmp curl -O https://dlcdn.apache.org/tomcat/tomcat-11/v11.0.0-M20/bin/apache-tomcat-11.0.0-M20.tar.gz
- پوشه نصب را در
/opt/tomcat
ایجاد کرده و فایلها را در آن استخراج کنید:sudo mkdir /opt/tomcat sudo tar xzvf apache-tomcat-*.tar.gz -C /opt/tomcat --strip-components=1
قدم چهارم: تنظیم دسترسیها (Permissions)
کاربر tomcat
که در قدم دوم ایجاد کردیم، باید مالکیت کامل پوشه نصب را در اختیار داشته باشد.
sudo chown -R tomcat:tomcat /opt/tomcat/
sudo chmod +x /opt/tomcat/bin/*.sh
قدم پنجم: ایجاد سرویس Systemd برای مدیریت Tomcat
برای اینکه بتوانیم تامکت را به عنوان یک سرویس مدیریت کنیم (start, stop, restart)، یک فایل سرویس systemd
برای آن ایجاد میکنیم.
فایل زیر را با ویرایشگر `nano` ایجاد کنید:
sudo nano /etc/systemd/system/tomcat.service
و محتوای زیر را در آن کپی کنید. توجه: ممکن است نیاز باشد مسیر JAVA_HOME
را بر اساس خروجی دستوراتی که در ادامه توضیح داده شده، ویرایش کنید.
[Unit]
Description=Apache Tomcat 11 Web Application Container
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64"
Environment="JAVA_OPTS=-Djava.awt.headless=true"
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"
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
[Install]
WantedBy=multi-user.target
پیدا کردن مسیر صحیح JAVA_HOME (در صورت نیاز):
اگر مسیر JAVA_HOME
در کد بالا برای سیستم شما صحیح نبود، با دستور زیر مسیر درست را پیدا کرده و در فایل سرویس جایگزین کنید:
- در اوبونتو/دبیان:
update-java-alternatives -l
- در AlmaLinux/Rocky:
ls -l /etc/alternatives/java_sdk
پس از ذخیره فایل، systemd
را مجددا بارگذاری کرده و سرویس تامکت را فعال و اجرا کنید:
sudo systemctl daemon-reload
sudo systemctl start tomcat
sudo systemctl enable tomcat
با دستور sudo systemctl status tomcat
میتوانید از صحت عملکرد سرویس مطمئن شوید.
قدم ششم: تنظیم فایروال
تامکت به صورت پیشفرض روی پورت 8080 اجرا میشود. این پورت را در فایروال باز کنید.
برای اوبونتو و دبیان (با UFW):
sudo ufw allow 8080/tcp
برای AlmaLinux، Rocky Linux (با firewalld):
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
قدم هفتم: پیکربندی دسترسی به پنل مدیریت وب
برای دسترسی به پنل مدیریت، باید یک کاربر ادمین تعریف کنیم. فایل tomcat-users.xml
را باز کنید:
sudo nano /opt/tomcat/conf/tomcat-users.xml
و کدهای زیر را درست قبل از تگ </tomcat-users>
اضافه کنید. فراموش نکنید که یک رمز عبور قوی به جای your-strong-password
قرار دهید.
<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="admin" password="your-strong-password" roles="manager-gui,admin-gui"/>
سپس سرویس تامکت را ریاستارت کنید: sudo systemctl restart tomcat
قدم هشتم: تست نهایی
مرورگر خود را باز کرده و به آدرس http://your-server-ip:8080
بروید. شما باید صفحه پیشفرض آپاچی تامکت را مشاهده کنید. با کلیک روی دکمه “Manager App” و وارد کردن نام کاربری (admin
) و رمز عبوری که تنظیم کردید، میتوانید وارد پنل مدیریت شوید.
اجرای اپلیکیشنهای مدرن جاوا نیازمند سروری با منابع پایدار و عملکرد بالاست. اگر به دنبال یک بستر ایدهآل برای پروژههای خود هستید، میتوانید با خرید vps آلمان از بلوسرور، زیرساختی قدرتمند با پینگ مناسب به ایران و اروپا فراهم کنید.
فهرست تیترها