Apache Tomcat je web poslužitelj otvorenog koda i kontejner servleta koji je razvila Apache Software Foundation (ASF).
Tomcat implementira Java Servlet i JavaServer Pages specifikacije iz Oraclea i pruža čisto okruženje Java HTTP web poslužitelja za pokretanje Java koda.
U ovom vodiču naučit ćemo kako kombinirati Docker i Tomcat za implementaciju Tomcat aplikacije 'hello world' koristeći Tomcat kao spremnik.
Zahtjevi:
Da biste uspješno slijedili i koristili upute i kôd koji se nalazi u ovom vodiču, provjerite imate li sljedeće:
- Instaliran Docker Engine na vašem glavnom računalu
- Instaliran Java JDK na vašem računalu za testiranje vašeg Java koda (izborno)
- Uređivač teksta za uređivanje izvornog koda i Docker konfiguracija
S ispunjenjem zadanih zahtjeva, možemo nastaviti i naučiti kako implementirati Tomcat aplikaciju pomoću Dockera.
Povucite Tomcat sliku u Docker
Srećom, ne moramo konfigurirati osnovnu sliku koja sadrži sve alate za pokretanje Tomcat aplikacije. Možemo jednostavno koristiti Tomcat sliku iz Docker Huba.
Da bismo povukli sliku, možemo pokrenuti naredbu na sljedeći način:
$ docker povući tomcat
Napravite aplikaciju Hello World
Sljedeći korak je izrada aplikacije “Hello World”. Započnite stvaranjem direktorija za pohranu vašeg izvornog koda i dođite do imenika.
$ mkdir Pozdrav svijete && CD Pozdrav svijete
Unutar korijenskog direktorija stvorite mapu webapp i unutar nje stvorite mapu WEB-INF.
Struktura vašeg imenika trebala bi izgledati ovako:
Pozdrav svijete /└── web aplikacija
└── WEB-INF
3 imenici, 0 datoteke
Zatim idite u direktorij WEB-INF i izradite datoteku 'web.xml' sa sljedećim kodom:
< web-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'
verzija = '4,0' >
< servlet >
< ime-servleta > Pozdrav svijete ime-servleta >
< servlet-klasa > HelloWorldServlet servlet-klasa >
servlet >
< servlet-mapping >
< ime-servleta > Pozdrav svijete ime-servleta >
< url-uzorak >/ zdravo url-uzorak >
servlet-mapping >
web-aplikacija >
Spremite datoteku i zatvorite uređivač.
Vratite se u prozor terminala, stvorite 'HelloWorldServlet.java' unutar direktorija WEB-INF/classes.
$ mkdir klase$ dodir HelloWorldServlet.java
Dodajte sadržaj aplikacije kao što je prikazano u nastavku:
uvoz javax.servlet.http. * ;
uvoz java.io. * ;
javna klasa HelloWorldServlet proširuje HttpServlet {
javni void doGet ( HttpServletRequest zahtjev, HttpServletResponse odgovor )
izbacuje ServletException, IOException {
odgovor.setContentType ( 'tekst/html' ) ;
PrintWriter out = response.getWriter ( ) ;
van.println ( '' ) ;
van.println ( '
van.println ( '
van.println ( '
Zdravo, svijete!
' ) ;van.println ( '