निम्नलिखित लेख में हम देखेंगे कि हम Ubuntu 9 पर Tomcat 18.04 कैसे स्थापित कर सकते हैं। इस की स्थापना के बारे में सर्वलेट्स और जेएसपी के लिए समर्थन के साथ कंटेनर दूसरों के बीच, एक सहयोगी ने कुछ साल पहले हमसे बात की थी लेख.
Apache Tomcat का एक कार्यान्वयन है खुला स्रोत जावा सर्वलेट, जावा सर्वर पेज, जावा एक्सप्रेशन लैंग्वेज और जावा वेबस्केट टेक्नोलॉजी। यह उन लोगों के लिए एक संपूर्ण समाधान प्रदान करता है जिन्हें इस प्रकार की सामग्री को निष्पादित करने की आवश्यकता होती है, जिनके बीच एसएमई तक बड़े संगठन और निगम हैं, क्योंकि अगर कुछ इस उपकरण की विशेषता है महान मापनीयता.
इससे पहले कि हम Tomcat 9 की स्थापना में गोता लगाएँ, हमें OpenJDK को स्थापित करना होगा।
OpenJDK स्थापित करें
La Ubuntu 18.04 पर OpenJDK पैकेज स्थापित करना यह काफी सरल है:
sudo apt install default-jdk
यदि आप Oracle जावा इंस्टॉल करना पसंद करते हैं OpenJDK के बजाय, देखें अनुदेश कुछ समय पहले एक सहयोगी ने पोस्ट किया था।
Tomcat के लिए उपयोगकर्ता बनाएँ
चलिए अब / opt / tomcat में होम डायरेक्टरी के साथ एक नया सिस्टम उपयोगकर्ता और समूह बनाएँ, जो टॉमकैट सेवा चलाएगा:
sudo useradd -m -U -d /opt/tomcat -s /bin/false tomcat
डाउनलोड Tomcat 9
हम इस्तेमाल करेंगे wget और unzip टॉम्कट 9 फ़ाइल को डाउनलोड करने और निकालने के लिए। हम उन्हें टाइप करके स्थापित कर सकते हैं:
sudo apt install unzip wget
डाउनलोड करते हैं Tomcat का नवीनतम संस्करण 9.0.x से डाउनलोड पेज। इस लेखन के रूप में, नवीनतम संस्करण 9.0.10 है.
जब हम डाउनलोड करने के लिए फ़ाइल के बारे में स्पष्ट होते हैं, तो हम आगे बढ़ेंगे / tmp निर्देशिका और wip के साथ ज़िप फ़ाइल डाउनलोड करें.
cd /tmp wget http://apache.rediris.es/tomcat/tomcat-9/v9.0.10/bin/apache-tomcat-9.0.10.zip
डाउनलोड पूरा होने के बाद, हम ज़िप फ़ाइल को निकालेंगे और इसे / opt / tomcat निर्देशिका में स्थानांतरित करेंगे:
unzip apache-tomcat-*.zip sudo mv apache-tomcat-*/ /opt/tomcat/
पैरा संस्करणों और अपडेट पर अधिक नियंत्रण है, हम एक प्रतीकात्मक लिंक बनाएंगे जो इंस्टॉलेशन डायरेक्टरी को इंगित करेगा:
sudo ln -s /opt/tomcat/apache-tomcat-* /opt/tomcat/latest
बाद में, यदि आप अपने टॉमकैट इंस्टॉलेशन को अपडेट करना चाहते हैं, तो आप नवीनतम संस्करण को अनपैक कर सकते हैं और नवीनतम संस्करण को इंगित करने के लिए सिमलिंक को बदल सकते हैं।
टकटक उपयोगकर्ता जिसे हमने पहले स्थापित किया है, उसकी आवश्यकता है Tomcat 9 निर्देशिका तक पहुंच। हमें निर्देशिका के स्वामित्व को tomcat के उपयोगकर्ता और समूह में बदलना होगा:
sudo chown -R tomcat: /opt/tomcat
भी हम बिन निर्देशिका निष्पादन योग्य के अंदर स्क्रिप्ट बनाएंगे:
sudo chmod +x /opt/tomcat/latest/bin/*.sh
एक Systemd इकाई फ़ाइल बनाएँ
एक सेवा के रूप में टॉमकैट चलाने के लिए, हम tomcat.service नामक एक नई इकाई फ़ाइल बनाएंगे। इसे बचाना होगा / etc / systemd / system / निर्देशिका के अंदर निम्नलिखित सामग्री के साथ:
[Unit] Description=Tomcat 9 servlet container After=network.target [Service] Type=forking User=tomcat Group=tomcat Environment="JAVA_HOME=/usr/lib/jvm/default-java" Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom" Environment="CATALINA_BASE=/opt/tomcat/latest" Environment="CATALINA_HOME=/opt/tomcat/latest" Environment="CATALINA_PID=/opt/tomcat/latest/temp/tomcat.pid" Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC" ExecStart=/opt/tomcat/latest/bin/startup.sh ExecStop=/opt/tomcat/latest/bin/shutdown.sh [Install] WantedBy=multi-user.target
सेवा की स्थिति की जाँच करें
हम सिस्टमड को सूचित करेंगे कि हमने एक नई यूनिट फाइल बनाई है और हम टॉमकैट सेवा शुरू करेंगे चल रहा है:
sudo systemctl daemon-reload sudo systemctl start tomcat
यह कर सकते हैं सेवा की स्थिति की जाँच करें निम्नलिखित आदेश के साथ:
sudo systemctl status tomcat
यदि कोई त्रुटि नहीं है, तो आप कर सकते हैं स्वचालित रूप से शुरू करने के लिए टॉमकैट सेवा को सक्षम करें बूट समय पर:
sudo systemctl enable tomcat
फ़ायरवॉल सेट करें
यदि आपका कंप्यूटर या सर्वर फ़ायरवॉल द्वारा सुरक्षित है और आप चाहते हैं अपने स्थानीय नेटवर्क के बाहर से टॉमकैट इंटरफ़ेस का उपयोग करें, आपको 8080 पोर्ट खोलने की आवश्यकता होगी। यह कदम कुछ स्थितियों में खतरनाक है।
पोर्ट 8080 पर यातायात की अनुमति के लिए निम्न कमांड टाइप करें:
sudo ufw allow 8080/tcp
टॉमकैट वेब मैनेजर इंटरफ़ेस कॉन्फ़िगर करें
अब जब हमारे टॉमबैट 9 को हमारे उबंटू में स्थापित किया गया है, तो अगला चरण है एक उपयोगकर्ता बनाएं जिसका वेब प्रशासन इंटरफ़ेस तक पहुंच हो। टॉमकैट उपयोगकर्ताओं और उनकी भूमिकाओं को फ़ाइल में परिभाषित किया गया है बिल्ला-users.xml.
यदि आप फ़ाइल खोलते हैं, तो आप देखेंगे कि यह टिप्पणियों और उदाहरणों से भरा है।
sudo vim /opt/tomcat/latest/conf/tomcat-users.xml
एक नया उपयोगकर्ता जोड़ने के लिए जो टॉमकैट वेब इंटरफ़ेस तक पहुँच सकता है (मैनेजर-गुई और व्यवस्थापक-गुई) ज़रुरत है tomcat-users.xml फ़ाइल के अंत में उपयोगकर्ता को परिभाषित करें जैसा कि निम्नलिखित में दिखाया गया है। उपयोगकर्ता नाम और पासवर्ड को कुछ और सुरक्षित करने के लिए सुनिश्चित करें:
<role rolename="admin-gui"/> <role rolename="manager-gui"/> <user username="admin" password="admin123" roles="admin-gui,manager-gui"/>
डिफ़ॉल्ट रूप से, टॉमकैट वेब प्रशासन इंटरफ़ेस केवल स्थानीय होस्ट से एक्सेस की अनुमति देने के लिए कॉन्फ़िगर किया गया है। यदि आपको एक दूरस्थ आईपी से वेब इंटरफेस का उपयोग करने की आवश्यकता है, तो निम्न फ़ाइलों को खोलें और स्क्रीनशॉट में चिह्नित लाइनों को टिप्पणी करें या हटाएं:
sudo vim /opt/tomcat/latest/webapps/manager/META-INF/context.xml
sudo vim /opt/tomcat/latest/webapps/host-manager/META-INF/context.xml
अगर आपको जरूरत है केवल एक विशिष्ट आईपी से वेब इंटरफेस का उपयोगब्लॉक की टिप्पणी करने के बजाय, सूची में अपना सार्वजनिक आईपी जोड़ें। अनुमत आईपी पते एक ऊर्ध्वाधर पट्टी द्वारा अलग किए गए हैं | आप अद्वितीय आईपी पते जोड़ सकते हैं या नियमित अभिव्यक्ति का उपयोग कर सकते हैं।
स्थापना का परीक्षण करें
अपना ब्राउज़र खोलें और टाइप करें: http: // your-domain-o-ip: 8080। यह मानते हुए कि इंस्टॉलेशन सफल है, निम्नलिखित जैसी स्क्रीन दिखाई देगी:
El टॉमकैट वेब एप्लिकेशन मैनेजर पैनल में उपलब्ध है http://tu-dominio-o-ip: 8080/manager/html। यहां आप अपने एप्लिकेशन प्रबंधित कर सकते हैं।
El Tomcat आभासी मशीन प्रबंधक में उपलब्ध है http://tu-dominio-o-ip: 8080/host-manager/html। यहां से आप टॉमकैट वर्चुअल होस्ट का प्रबंधन कर सकते हैं।
आप दौरा करना आधिकारिक दस्तावेज टॉमकैट 9 द्वारा और इसकी विशेषताओं के बारे में अधिक जानें।
बहुत बढ़िया ट्यूटोरियल!
उत्कृष्ट स्पष्ट और संक्षिप्त ट्यूटोरियल
निर्दोष ट्यूटोरियल। इसके अलावा जो समझाया गया था, मुझे केवल बनाई गई फ़ाइल tomcat.service को निष्पादन की अनुमति देनी थी और tomcat.service फ़ाइल के अंदर "JAVA_HOME" का पथ बदलना था और सब कुछ काम किया।
हैलो यह उत्कृष्ट है, लेकिन मैं जारी नहीं रख सका क्योंकि मुझे नहीं पता कि भाग को कहां टाइप करना है
[यूनिट]
विवरण = टॉमकट 9 सर्वलेट कंटेनर
= Network.target के बाद
[सर्विस]
प्रकार = forking
उपयोगकर्ता = बिल्ला
समूह = बिल्ला
पर्यावरण = »JAVA_HOME = / usr / lib / jvm / default-java»
पर्यावरण = »JAVA_OPTS = -Djava.security.egd = फ़ाइल: /// देव / यूरेनियम»
पर्यावरण = »CATALINA_BASE = / ऑप्ट / टॉमकैट / नवीनतम»
पर्यावरण = »कैटालिना_होम = / ऑप्ट / टॉमकैट / नवीनतम»
पर्यावरण = »CATALINA_PID = / ऑप्ट / टॉमकैट / नवीनतम / अस्थायी / tomcat.pid»
पर्यावरण = »CATALINA_OPTS = -Xms512M -Xmx1024M -server -XX: + UseParallelGC»
ExecStart = / opt / tomcat / latest / bin / startup.sh
ExecStop = / opt / tomcat / latest / bin / shutdown.sh
[इंस्टॉल करें]
WantedBy = multi-user.target
आपको इसे टर्मिनल में करना होगा।
सादर
नमस्ते। आपको /etc/systemd/system/tomcat.service फ़ाइल में आपके द्वारा निर्दिष्ट कोड पेस्ट करना होगा। फ़ाइल बनाने या संपादित करने के लिए कुछ संपादक का उपयोग करें। सलू 2।
नमस्ते, जब मैं उस पृष्ठ को प्राप्त करने की कोशिश करता हूं जो आपको बताता है कि आपने सफलतापूर्वक टॉमकैट स्थापित किया है, तो यह कई नेटवर्क त्रुटियों को चिह्नित करता है। मैंने लोकलहोस्ट के साथ कोशिश की है, इसे हटाने और डालने के लिए जो यह कहता है कि हम अन्य ips को छोड़ने के लिए टिप्पणी करते हैं, लेकिन स्थानीयहोस्ट के साथ भी नहीं जो मैं कनेक्ट कर सकता हूं, और यह कि मैंने कमांड को पोर्ट 8080 पर यातायात की अनुमति देने के लिए रखा था
इसने मेरी सेवा नहीं की
बहुत अच्छा, धन्यवाद.
बहुत अच्छा. बहुत बहुत धन्यवाद.
सही ट्यूटोरियल !!!
हजारों धन्यवाद !!!!
उत्कृष्ट ट्यूटोरियल, लेकिन अगर मुझे यह कॉन्फ़िगर किया गया है तो मुझे tomcat.service फ़ाइल बनाते समय एक समस्या है
[यूनिट]
विवरण = टॉमकट 9 सर्वलेट कंटेनर
= Network.target के बाद
[सर्विस]
प्रकार = forking
उपयोगकर्ता = बिल्ला
समूह = बिल्ला
पर्यावरण = »JAVA_HOME = / usr / lib / jvm / java-11-openjdk-amd64 / jre»
पर्यावरण = »JAVA_OPTS = -Djava.security.egd = फ़ाइल: /// देव / यूरेनियम»
पर्यावरण = »CATALINA_BASE = / ऑप्ट / टॉमकैट /»
पर्यावरण = »कैटालिना_होम = / ऑप्ट / टॉमकैट /»
पर्यावरण = »CATALINA_PID = / ऑप्ट / टॉमकैट / अस्थायी / tomcat.pid»
पर्यावरण = »CATALINA_OPTS = -Xms512M -Xmx1024M -server -XX: + UseParallelGC»
पर्यावरण = »CATALINA_OUT = / opt / tomcat / log / catalina.out
ExecStart = / opt / बिल्ला / bin / startup.sh
ExecStop = / opt / बिल्ला / bin / shutdown.sh
[इंस्टॉल करें]
WantedBy = multi-user.target
जब सिस्टम निष्पादित करना शुरू करते हैं, तो यह मुझे निम्न त्रुटि देता है:
Tomcat.service के लिए नौकरी विफल रही क्योंकि नियंत्रण प्रक्रिया त्रुटि कोड के साथ बाहर निकल गई।
विवरण के लिए "systemctl स्टेटस tomcat.service" और "journalctl -xe" देखें।
कमांड systemctl स्टेटस को चलाने के लिए tomcat.service शो:
tomcat.service - टॉमकैट 9 सर्वलेट कंटेनर
भरी हुई: भरी हुई (/etc/systemd/system/tomcat.service; अक्षम; विक्रेता पूर्व निर्धारित:
सक्रिय: विफल (परिणाम: निकास-कोड) Thu 2020-07-09 13:14:25 सीएसटी के बाद से; 2min 12s पहले
प्रक्रियाः
Jul 09 13:14:25 मेजबान-120901 systemd [1]: टॉमकैट 9 सर्वलेट कंटेनर शुरू करना ...
Jul 09 13:14:25 मेजबान-120901 systemd [1]: tomcat.service: नियंत्रण प्रक्रिया से बाहर, कोड = बाहर, स्थिति = 2 / INVALIDARGUMENT
Jul 09 13:14:25 मेजबान-120901 systemd [1]: tomcat.service: परिणाम 'निकास-कोड' के साथ विफल।
जुलाई 09 13:14:25 मेजबान-120901 systemd [1]: टॉमकैट 9 सर्वलेट कंटेनर शुरू करने में विफल।
और जब journalctl -xe चल रहा हो
Jul 09 13:14:25 host-120901 startup.sh [5869]: स्पर्श: '/' पर 'टच' प्रदर्शन नहीं कर सकता / रोक / ttcat//logs/catalina.out ': अनुमति से इनकार किया
जुलाई 09 13:14:25 मेजबान-120901 स्टार्टअप.श [5851]: /opt/tomcat/bin/catalina.sh: 505: /opt /tomcat//logs/catalina.out नहीं बना सकता: अनुमति से इनकार किया
जुलाई 09 13:15:01 मेजबान-120901 CRON [5879]: pam_unix (क्रोन: सत्र): सत्र उपयोगकर्ता रूट के लिए खोला गया (uid = 0)
Jul 09 13:15:01 मेजबान-120901 CRON [5880]: (रूट) CMD (कमांड -v debian-sa1> / dev / null && debian-sa1 1 1)
Jul 09 13:15:01 मेजबान-120901 CRON [5879]: pam_unix (क्रोन: सत्र): उपयोगकर्ता रूट के लिए सत्र बंद
जुलाई 09 13:16:32 मेजबान-120901 wpa_supplicant [707]: wlp2s0: स्कैन ट्रिगर को अस्वीकार करें क्योंकि एक पहले से ही लंबित है
जुलाई 09 13:17:01 मेजबान-120901 CRON [5905]: pam_unix (क्रोन: सत्र): सत्र उपयोगकर्ता रूट के लिए खोला गया (uid = 0)
Jul 09 13:17:01 मेजबान-120901 CRON [5906]: (रूट) CMD (cd / && run-parts -etport/cron.hourly)
जुलाई 09 13:17:01 host120901 CRON [5905]: pam_unix (क्रोन: सत्र): सत्र उपयोगकर्ता रूट के लिए बंद
क्या आप मुझे समझा सकते हैं कि मेरे पास कृपया है
मॅई आपको बहुत बहुत धन्यवाद, शिक्षक ने 2020 में इन डिक्स के लिए कहा
गंज टोल ट्यूटोरियल। हब दास सेल्बस्ट एमआईटी मीनम मिनिमल लिनक्स केननिसेन हिन बेकोमेन। समस्या यह है कि "बाहरी" नेचर, और रिच्टिगे इन्टरजेन और प्रॉक्सी। हब डाई इंस्टालेशन एमआईटी 10.0.6, गिंग ओहने प्रॉब्लम।
नूर सो, डाई सचे मिट डेर कॉन्टेक्स्ट.एक्सएमएल स्टेहट ज़्वीमल ड्रिन।
शुक्रिया.