Ühendage Docker ja Tomcat

Uhendage Docker Ja Tomcat



Apache Tomcat on avatud lähtekoodiga veebiserver ja servletikonteiner, mille on välja töötanud Apache Software Foundation (ASF).

Tomcat rakendab Oracle'i Java Servleti ja JavaServer Pages spetsifikatsioone ning pakub Java koodi käivitamiseks puhast Java HTTP veebiserveri keskkonda.







Selles õpetuses õpime, kuidas ühendada Docker ja Tomcat, et juurutada Tomcati 'tere maailm' rakendus, kasutades Tomcati konteinerina.



Nõuded:

Selles õpetuses esitatud juhiste ja koodi edukaks järgimiseks ja kasutamiseks veenduge, et teil on järgmised asjad.



    1. Teie hostmasinasse installitud Docker Engine
    2. Installisite oma arvutisse Java JDK, et oma Java koodi testida (valikuline)
    3. Tekstiredaktor lähtekoodi ja Dockeri konfiguratsioonide redigeerimiseks

Kui etteantud nõuded on täidetud, saame jätkata ja õppida, kuidas Dockeri abil Tomcati rakendust juurutada.





Tõmmake Dockeris Tomcati pilt

Õnneks ei pea me konfigureerima põhipilti, mis sisaldab Tomcati rakenduse käitamiseks kõiki tööriistu. Saame lihtsalt kasutada Tomcati pilti Docker Hubist.

Pildi tõmbamiseks saame käivitada käsu järgmiselt:



$ dokk tõmba kottkass


Looge rakendus Hello World

Järgmine samm on rakenduse 'Tere maailm' loomine. Alustage lähtekoodi salvestamiseks kataloogi loomisega ja navigeerige kataloogi.

$ mkdir Tere, Maailm && cd Tere, Maailm


Looge juurkataloogis veebirakenduse kaust ja looge selle sees kaust WEB-INF.

Teie kataloogi struktuur peaks välja nägema järgmine:

Tere, Maailm /
└── veebirakendus
└── WEB-INF

3 kataloogid, 0 failid


Järgmisena navigeerige WEB-INF kataloogi ja looge fail 'web.xml' järgmise koodiga:

< ?xml versioon = '1.0' kodeering = 'UTF-8' ? >
< veebirakendus xmlns = 'http://xmlns.jcp.org/xml/ns/javaee'
xmlns: xsi = 'http://www.w3.org/2001/XMLSchema-instance'
xsi: skeemAsukoht = 'http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd'
versioon = '4.0' >
< servlet >
< servleti nimi > Tere, Maailm servleti nimi >
< servlet-klass > HelloWorldServlet servlet-klass >
servlet >
< servlet-mapping >
< servleti nimi > Tere, Maailm servleti nimi >
< URL-i muster >/ Tere URL-i muster >
servlet-mapping >
veebirakendus >


Salvestage fail ja sulgege redaktor.

Tagasi terminali aknas looge WEB-INF/classes kataloogis 'HelloWorldServlet.java'.

$ mkdir klassid
$ puudutada HelloWorldServlet.java


Lisage rakenduse sisu järgmiselt:

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

avalik klass HelloWorldServlet laiendab HttpServleti {
public void doGet ( HttpServletRequest päring, HttpServletResponse'i vastus )
viskab ServletException, IOException {
response.setContentType ( 'text/html' ) ;
PrintWriter out = vastus.getWriter ( ) ;
välja.println ( '' ) ;
välja.println ( 'Hello World Servlet' ) ;
välja.println ( ' ' ) ;
välja.println ( '

Tere, maailm!

'
) ;
välja.println ( '' ) ;
}
}


See seadistab Tomcati põhiservleti, mis prindib 'Tere maailm'.



Defineerige Dockeri fail

Järgmine samm on meie jaoks Dockerfile'i määratlemine, et luua kohandatud pilt, mis sisaldab meie rakendust 'Tere maailm'.

Loo juurkataloogis uus fail nimega 'Dockerfile':







$ puudutada ~ / Tere, Maailm / Dockerfile


Redigeerige faili ja lisage konfiguratsioon järgmiselt:

# määrake Tomcati põhipilt
FROM tomcat:latest

# Kopeerige rakendus Hello World Tomcati veebirakenduste kataloogi
KOPERI . / veebirakendus / usr / kohalik / kõuts / veebirakendused / minu rakendus
# Avaldage Tomcati jaoks port 8080
AVALDA 8080


Teil peaks olema järgmine kataloogi paigutus:

Tere, Maailm
├── Dockerfile
└── veebirakendus
└── WEB-INF
├── klassid
│   └── HelloWorldServlet.java
└── web.xml

4 kataloogid, 3 failid

Ehitage pilt

Järgmisena koostame kohandatud Tomcati pildi, nagu on näidatud järgmises käsus:

$ doki ehitamine -t tomcat-rakendus.


Käivitage konteiner

Kui pilt on valmis, saame konteineri käivitada pildilt, kasutades järgmist käsku:

$ dokijooks -d -lk 8080 : 8080 --nimi tomcat-container tomcat-app


See peaks koostama Tomcati konteineri eelmises etapis loodud tomcati rakenduse kujutisest ja siduma selle hostmasina pordiga 8080.

Juurdepääs rakendusele

Avage veebibrauser ja navigeerige saidile . Peaksite nägema 'Tere, maailm!' teie brauseris kuvatav teade.

Järeldus

Palju õnne! Olete edukalt juurutanud rakenduse „Tere maailm” dockeriseeritud Tomcati konteineris.