Apache Tomcat은 ASF(Apache Software Foundation)에서 개발한 오픈 소스 웹 서버이자 서블릿 컨테이너입니다.
Tomcat은 Oracle의 Java Servlet 및 JavaServer Pages 사양을 구현하며 Java 코드를 실행할 수 있는 순수 Java HTTP 웹 서버 환경을 제공합니다.
이 튜토리얼에서는 Docker와 Tomcat을 결합하여 Tomcat을 컨테이너로 사용하여 Tomcat 'hello world' 애플리케이션을 배포하는 방법을 알아봅니다.
요구사항:
이 자습서에 제공된 지침과 코드를 성공적으로 따르고 사용하려면 다음이 있는지 확인하십시오.
- 호스트 머신에 Docker 엔진을 설치했습니다.
- Java 코드를 테스트하기 위해 컴퓨터에 Java JDK를 설치했습니다(선택 사항).
- 소스 코드 및 Docker 구성을 편집하는 텍스트 편집기
주어진 요구 사항이 충족되면 계속 진행하여 Docker를 사용하여 Tomcat 앱을 배포하는 방법을 배울 수 있습니다.
Docker에서 Tomcat 이미지 가져오기
다행히 Tomcat 애플리케이션을 실행하기 위한 모든 도구가 포함된 기본 이미지를 구성할 필요가 없습니다. Docker Hub의 Tomcat 이미지를 간단히 사용할 수 있습니다.
이미지를 가져오려면 다음과 같이 명령을 실행할 수 있습니다.
$ 도커 풀 톰캣
Hello World 애플리케이션 만들기
다음 단계는 'Hello World' 애플리케이션을 만드는 것입니다. 소스 코드를 저장할 디렉토리를 생성하고 해당 디렉토리로 이동하세요.
$ mkdir hello_world && CD hello_world
루트 디렉터리 안에 webapp 폴더를 만들고 그 안에 WEB-INF 폴더를 만듭니다.
디렉터리 구조는 다음과 같아야 합니다.
hello_world /└── 웹앱
└── WEB-INF
삼 디렉토리, 0 파일
그런 다음 WEB-INF 디렉터리로 이동하여 다음 코드를 사용하여 “web.xml” 파일을 만듭니다.
< 웹앱 xmlns = 'http://xmlns.jcp.org/xml/ns/javaee'
xmlns: xsi = 'http://www.w3.org/2001/XMLSchema-instance'
xsi: 스키마 위치 = 'http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd'
버전 = '4.0' >
< 서블릿 >
< 서블릿 이름 > 헬로월드 서블릿 이름 >
< 서블릿 클래스 > HelloWorld서블릿 서블릿 클래스 >
서블릿 >
< 서블릿 매핑 >
< 서블릿 이름 > 헬로월드 서블릿 이름 >
< URL 패턴 >/ 안녕하세요 URL 패턴 >
서블릿 매핑 >
웹앱 >
파일을 저장하고 편집기를 닫습니다.
터미널 창으로 돌아가서 WEB-INF/classes 디렉토리 내에 'HelloWorldServlet.java'를 생성하십시오.
$ mkdir 클래스$ 만지다 HelloWorldServlet.java
다음과 같이 애플리케이션의 내용을 추가합니다.
javax.servlet.http를 가져옵니다. * ;
java.io를 가져옵니다. * ;
공개 클래스 HelloWorldServlet은 HttpServlet을 확장합니다. {
공공 무효 doGet ( HttpServletRequest 요청, HttpServletResponse 응답 )
ServletException, IOException이 발생합니다. {
response.setContentType ( '텍스트/html' ) ;
PrintWriter 출력 = response.getWriter ( ) ;
out.println ( '' ) ;
out.println ( '
out.println ( '<본문>' ) ;
out.println ( '
안녕하세요, 세계!
' ) ;out.println ( '