अपाचे टॉमकैट अपाचे सॉफ्टवेयर फाउंडेशन (एएसएफ) द्वारा विकसित एक ओपन-सोर्स वेब सर्वर और सर्वलेट कंटेनर है।
टॉमकैट ओरेकल से जावा सर्वलेट और जावासर्वर पेज विनिर्देशों को लागू करता है और यह जावा कोड को चलाने के लिए एक शुद्ध जावा HTTP वेब सर्वर वातावरण प्रदान करता है।
इस ट्यूटोरियल में, हम सीखेंगे कि टॉमकैट को कंटेनर के रूप में उपयोग करके टॉमकैट 'हैलो वर्ल्ड' एप्लिकेशन को तैनात करने के लिए डॉकर और टॉमकैट को कैसे संयोजित किया जाए।
आवश्यकताएं:
इस ट्यूटोरियल में दिए गए निर्देशों और कोड का सफलतापूर्वक पालन करने और उपयोग करने के लिए, सुनिश्चित करें कि आपके पास निम्नलिखित हैं:
- आपकी होस्ट मशीन पर डॉकर इंजन स्थापित किया गया
- आपके जावा कोड का परीक्षण करने के लिए आपकी मशीन पर जावा जेडीके स्थापित किया गया है (वैकल्पिक)
- स्रोत कोड और डॉकर कॉन्फ़िगरेशन को संपादित करने के लिए एक टेक्स्ट एडिटर
दी गई आवश्यकताओं को पूरा करने के बाद, हम आगे बढ़ सकते हैं और सीख सकते हैं कि डॉकर का उपयोग करके टॉमकैट ऐप को कैसे तैनात किया जाए।
डॉकर में टॉमकैट छवि खींचें
सौभाग्य से, हमें एक आधार छवि को कॉन्फ़िगर करने की आवश्यकता नहीं है जिसमें टॉमकैट एप्लिकेशन को चलाने के लिए सभी उपकरण शामिल हों। हम बस डॉकर हब से टॉमकैट छवि का उपयोग कर सकते हैं।
छवि खींचने के लिए, हम निम्नानुसार कमांड चला सकते हैं:
$ डॉकर पुल टॉमकैट
एक हेलो वर्ल्ड एप्लिकेशन बनाएं
अगला कदम 'हैलो वर्ल्ड' एप्लिकेशन बनाना है। अपने स्रोत कोड को संग्रहीत करने और निर्देशिका में नेविगेट करने के लिए एक निर्देशिका बनाकर प्रारंभ करें।
$ mkdir हैलो वर्ल्ड && सीडी हैलो वर्ल्ड
रूट डायरेक्टरी के अंदर, एक वेबएप फ़ोल्डर बनाएं और उसके अंदर एक WEB-INF फ़ोल्डर बनाएं।
आपकी निर्देशिका संरचना इस तरह दिखनी चाहिए:
हैलो वर्ल्ड /└── वेबएप
└── वेब-आईएनएफ
3 निर्देशिकाएँ, 0 फ़ाइलें
इसके बाद, WEB-INF निर्देशिका में नेविगेट करें और निम्नलिखित कोड के साथ एक 'web.xml' फ़ाइल बनाएं:
< वेब अप्प xmlns = 'http://xmlns.jcp.org/xml/ns/javaee'
एक्सएमएलएनएस: xsi = 'http://www.w3.org/2001/XMLSchema-instance'
एक्सएसआई: स्कीमास्थान = 'http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd'
संस्करण = '4.0' >
< सर्वलेट >
< सर्वलेट-नाम > हैलो वर्ल्ड सर्वलेट-नाम >
< सर्वलेट-क्लास > हेलोवर्ल्ड सर्वलेट सर्वलेट-क्लास >
सर्वलेट >
< सर्वलेट-मैपिंग >
< सर्वलेट-नाम > हैलो वर्ल्ड सर्वलेट-नाम >
< यूआरएल-पैटर्न >/ नमस्ते यूआरएल-पैटर्न >
सर्वलेट-मैपिंग >
वेब अप्प >
फ़ाइल सहेजें और संपादक बंद करें.
अपने टर्मिनल विंडो में वापस, WEB-INF/classes निर्देशिका के अंदर एक 'HelloWorldServlet.java' बनाएं।
$ mkdir कक्षाओं$ छूना HelloWorldServlet.java
एप्लिकेशन की सामग्री जोड़ें जैसा कि निम्नलिखित में दिखाया गया है:
javax.servlet.http आयात करें। * ;
java.io आयात करें। * ;
पब्लिक क्लास HelloWorldServlet HttpServlet का विस्तार करता है {
सार्वजनिक शून्य doGet ( HttpServletRequest अनुरोध, HttpServletResponse प्रतिक्रिया )
सर्वलेटएक्सेप्शन, IOException फेंकता है {
प्रतिक्रिया.setContentType ( 'पाठ/एचटीएमएल' ) ;
प्रिंटराइटर आउट = प्रतिक्रिया.गेटराइटर ( ) ;
आउट.प्रिंटएलएन ( '<एचटीएमएल>' ) ;
आउट.प्रिंटएलएन ( '
आउट.प्रिंटएलएन ( '<शरीर>' ) ;
आउट.प्रिंटएलएन ( '
हैलो, विश्व!
' ) ;आउट.प्रिंटएलएन ( '