Kombinálja a Dockert és a Tomcat-et

Kombinalja A Dockert Es A Tomcat Et



Az Apache Tomcat egy nyílt forráskódú webszerver és szervlet-tároló, amelyet az Apache Software Foundation (ASF) fejlesztett ki.

A Tomcat megvalósítja az Oracle Java Servlet és JavaServer Pages specifikációit, és tiszta Java HTTP webszerver környezetet biztosít a Java kód futtatásához.







Ebben az oktatóanyagban megtanuljuk, hogyan lehet kombinálni a Dockert és a Tomcat-ot egy Tomcat „hello world” alkalmazás üzembe helyezéséhez a Tomcat tárolóként használva.



Követelmények:

Az oktatóanyagban található utasítások és kód sikeres követéséhez és használatához győződjön meg arról, hogy rendelkezik a következőkkel:



    1. Telepítette a Docker Engine-t a gazdagépen
    2. Java JDK telepítése a gépére a Java kód teszteléséhez (opcionális)
    3. Szövegszerkesztő a forráskód és a Docker-konfigurációk szerkesztéséhez

Ha a megadott követelmények teljesülnek, folytathatjuk és megtanulhatjuk, hogyan telepíthetünk Tomcat alkalmazást a Docker segítségével.





Húzza ki a Tomcat képet a Dockerben

Szerencsére nem kell olyan alapképet konfigurálnunk, amely tartalmazza a Tomcat alkalmazás futtatásához szükséges összes eszközt. Egyszerűen használhatjuk a Docker Hub Tomcat képét.

A kép lehívásához a következő parancsot futtathatjuk:



$ dokkoló húzza tomca


Hozzon létre egy Hello World alkalmazást

A következő lépés a „Hello World” alkalmazás létrehozása. Kezdje azzal, hogy hozzon létre egy könyvtárat a forráskód tárolására, és navigáljon a könyvtárba.

$ mkdir Helló Világ && CD Helló Világ


A gyökérkönyvtárban hozzon létre egy webapp mappát, és hozzon létre benne egy WEB-INF mappát.

A könyvtárszerkezetnek így kell kinéznie:

Helló Világ /
└── webalkalmazás
└── WEB-INF

3 könyvtárak, 0 fájlokat


Ezután navigáljon a WEB-INF könyvtárba, és hozzon létre egy „web.xml” fájlt a következő kóddal:

< ?xml változat = '1.0' kódolás = 'UTF-8' ? >
< web-alkalmazás xmlns = 'http://xmlns.jcp.org/xml/ns/javaee'
xmlns: xsi = 'http://www.w3.org/2001/XMLSchema-instance'
xsi: schemaLocation = 'http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd'
változat = '4.0' >
< szervlet >
< szervlet-név > Helló Világ szervlet-név >
< szervlet-osztály > HelloWorldServlet szervlet-osztály >
szervlet >
< szervlet-leképezés >
< szervlet-név > Helló Világ szervlet-név >
< url-minta >/ Helló url-minta >
szervlet-leképezés >
web-alkalmazás >


Mentse el a fájlt, és zárja be a szerkesztőt.

A terminál ablakában hozzon létre egy „HelloWorldServlet.java” fájlt a WEB-INF/classes könyvtárban.

$ mkdir osztályok
$ érintés HelloWorldServlet.java


Adja hozzá az alkalmazás tartalmát az alábbiak szerint:

import javax.servlet. * ;
import javax.servlet.http. * ;
import java.io. * ;

public class HelloWorldServlet kiterjeszti a HttpServletet {
public void doGet ( HttpServletRequest kérés, HttpServletResponse válasz )
ServletException, IOExceptiont dob {
válasz.setContentType ( 'text/html' ) ;
PrintWriter out = válasz.getWriter ( ) ;
ki.println ( '' ) ;
ki.println ( 'Hello World Servlet' ) ;
ki.println ( '' ) ;
ki.println ( '

Hello, World!

'
) ;
ki.println ( '' ) ;
}
}


Ez beállít egy alap Tomcat szervletet, amely kiírja a „Hello world” szöveget.



Határozza meg a Docker-fájlt

A következő lépés számunkra a Dockerfile meghatározása, hogy létrehozzunk egy egyedi képet, amely tartalmazza a „Hello World” alkalmazásunkat.

A gyökérkönyvtárban hozzon létre egy új fájlt „Dockerfile” néven:







$ érintés ~ / Helló Világ / Dockerfile


Szerkessze a fájlt, és adja hozzá a konfigurációt az alábbiak szerint:

# állítsa be a Tomcat alapképet
FROM tomcat:legújabb

# Másolja a Hello World alkalmazást a Tomcat webapps könyvtárába
MÁSOLÁS. / webapp / usr / helyi / kandúr / webalkalmazások / myapp
# Tegye fel a 8080-as portot a Tomcat számára
KIFEJEZNI 8080


A következő címtárelrendezéssel kell rendelkeznie:

Helló Világ
├── Dockerfile
└── webalkalmazás
└── WEB-INF
├── osztályok
│   └── HelloWorldServlet.java
└── web.xml

4 könyvtárak, 3 fájlokat

Építsd meg a képet

Ezután elkészítjük az egyéni Tomcat képet a következő parancs szerint:

$ dokkoló épít -t tomcat-app .


Futtassa a tárolót

Ha elkészült a kép, futtathatjuk a tárolót a képből a következő paranccsal:

$ dokkolófuttatás -d -o 8080 : 8080 --név tomcat-container tomcat-app


Ennek létre kell hoznia a Tomcat-tárolót az előző lépésben létrehozott tomcat-app képből, és a gazdagép 8080-as portjához kell kötnie.

Nyissa meg az Alkalmazást

Nyisson meg egy webböngészőt, és navigáljon ide . Látnod kell a 'Hello, World!' üzenet jelenik meg a böngészőjében.

Következtetés

Gratulálunk! Sikeresen telepített egy „Hello World” alkalmazást egy Dockerizált Tomcat tárolóban.