Apache Tomcat je odprtokodni spletni strežnik in vsebnik servletov, ki ga je razvila Apache Software Foundation (ASF).
Tomcat izvaja specifikacije Java Servlet in JavaServer Pages iz Oracla in zagotavlja čisto okolje spletnega strežnika Java HTTP za izvajanje kode Java.
V tej vadnici se bomo naučili, kako združiti Docker in Tomcat za uvedbo aplikacije Tomcat »hello world« z uporabo Tomcata kot vsebnika.
Zahteve:
Če želite uspešno slediti in uporabljati navodila in kodo v tej vadnici, zagotovite, da imate naslednje:
- Nameščen Docker Engine na vašem gostiteljskem računalniku
- Nameščen Java JDK na vašem računalniku za testiranje kode Java (izbirno)
- Urejevalnik besedila za urejanje izvorne kode in konfiguracij Dockerja
Ko so dane zahteve izpolnjene, lahko nadaljujemo in se naučimo, kako namestiti aplikacijo Tomcat z uporabo Dockerja.
Potegnite sliko Tomcat v Docker
Na srečo nam ni treba konfigurirati osnovne slike, ki vsebuje vsa orodja za zagon aplikacije Tomcat. Lahko preprosto uporabimo sliko Tomcat iz Docker Huba.
Če želite potegniti sliko, lahko zaženemo ukaz na naslednji način:
$ docker pull tomcat
Ustvarite aplikacijo Hello World
Naslednji korak je izdelava aplikacije »Hello World«. Začnite tako, da ustvarite imenik za shranjevanje izvorne kode in se pomaknete v imenik.
$ mkdir Pozdravljen, svet && cd Pozdravljen, svet
Znotraj korenskega imenika ustvarite mapo webapp in v njej ustvarite mapo WEB-INF.
Vaša struktura imenika bi morala izgledati takole:
Pozdravljen, svet /└── spletna aplikacija
└── SPLETNE INF
3 imeniki, 0 datoteke
Nato se pomaknite v imenik WEB-INF in ustvarite datoteko »web.xml« z naslednjo kodo:
< spletna aplikacija 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'
različica = '4,0' >
< servlet >
< ime-servleta > Pozdravljen, svet ime-servleta >
< servlet-razred > HelloWorldServlet servlet-razred >
servlet >
< preslikava servleta >
< ime-servleta > Pozdravljen, svet ime-servleta >
< url-vzorec >/ zdravo url-vzorec >
preslikava servleta >
spletna aplikacija >
Shranite datoteko in zaprite urejevalnik.
V terminalskem oknu ustvarite »HelloWorldServlet.java« znotraj imenika WEB-INF/classes.
$ mkdir razredi$ dotik HelloWorldServlet.java
Dodajte vsebino aplikacije, kot je prikazano spodaj:
uvozi javax.servlet.http. * ;
uvozi java.io. * ;
javni razred HelloWorldServlet razširja HttpServlet {
public void doGet ( Zahteva HttpServletRequest, odgovor HttpServletResponse )
vrže izjemo ServletException, IOException {
response.setContentType ( 'besedilo/html' ) ;
PrintWriter out = response.getWriter ( ) ;
ven.println ( '' ) ;
ven.println ( '
ven.println ( '
ven.println ( '
Pozdravljen, svet!
' ) ;ven.println ( '