Ang Apache Tomcat ay isang open-source na web server at servlet container na binuo ng Apache Software Foundation (ASF).
Ipinapatupad ng Tomcat ang Java Servlet at ang mga detalye ng JavaServer Pages mula sa Oracle at nagbibigay ito ng purong Java HTTP web server environment para tumakbo ang Java code.
Sa tutorial na ito, matututunan natin kung paano pagsamahin ang Docker at Tomcat upang mag-deploy ng isang Tomcat na 'hello world' na application gamit ang Tomcat bilang isang lalagyan.
Mga kinakailangan:
Upang matagumpay na sundin at magamit ang mga tagubilin at ang code na ibinigay sa tutorial na ito, tiyaking mayroon kang sumusunod:
- Naka-install na Docker Engine sa iyong host machine
- Nag-install ng Java JDK sa iyong makina upang subukan ang iyong Java code (opsyonal)
- Isang text editor upang i-edit ang source code at mga configuration ng Docker
Sa mga ibinigay na kinakailangan, maaari tayong magpatuloy at matutunan kung paano mag-deploy ng Tomcat app gamit ang Docker.
Hilahin ang Tomcat Image sa Docker
Sa kabutihang palad, hindi namin kailangang i-configure ang isang batayang imahe na naglalaman ng lahat ng mga tool upang magpatakbo ng isang Tomcat application. Magagamit lang natin ang larawang Tomcat mula sa Docker Hub.
Upang hilahin ang imahe, maaari naming patakbuhin ang command tulad ng sumusunod:
$ docker pull tomcat
Gumawa ng Hello World Application
Ang susunod na hakbang ay upang lumikha ng 'Hello World' na application. Magsimula sa pamamagitan ng paglikha ng isang direktoryo upang iimbak ang iyong source code at mag-navigate sa direktoryo.
$ mkdir hello_world && cd hello_world
Sa loob ng root directory, lumikha ng webapp folder at lumikha ng WEB-INF folder sa loob nito.
Ang istraktura ng iyong direktoryo ay dapat magmukhang ganito:
hello_world /└── webapp
└── WEB-INF
3 mga direktoryo, 0 mga file
Susunod, mag-navigate sa direktoryo ng WEB-INF at lumikha ng 'web.xml' file na may sumusunod na code:
< web-app 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'
bersyon = '4.0' >
< servlet >
< servlet-name > HelloWorld servlet-name >
< servlet-class > HelloWorldServlet servlet-class >
servlet >
< servlet-mapping >
< servlet-name > HelloWorld servlet-name >
< url-pattern >/ Kamusta url-pattern >
servlet-mapping >
web-app >
I-save ang file at isara ang editor.
Bumalik sa iyong terminal Window, lumikha ng 'HelloWorldServlet.java' sa loob ng direktoryo ng WEB-INF/classes.
$ mkdir mga klase$ hawakan HelloWorldServlet.java
Idagdag ang mga nilalaman ng application tulad ng ipinapakita sa sumusunod:
import javax.servlet.http. * ;
import java.io. * ;
ang pampublikong klase na HelloWorldServlet ay nagpapalawak ng HttpServlet {
pampublikong void doGet ( HttpServletRequest kahilingan, HttpServletResponse tugon )
itinapon ang ServletException, IOException {
response.setContentType ( 'text/html' ) ;
PrintWriter out = response.getWriter ( ) ;
out.println ( '' ) ;
out.println ( '
out.println ( '
out.println ( '
Kumusta, Mundo!
' ) ;out.println ( '