1. 개요
도커에서 톰캣을 설치하는 경험.
2. 사전 확인 사항
도커 환경이어야 한다.
3. 실행
3-1. 이미지 받기
# docker pull tomcat:8 8: Pulling from library/tomcat 0bd44ff9c2cf: Pull complete 047670ddbd2a: Pull complete ea7d5dc89438: Pull complete 4a05570971bb: Pull complete 66f679cd5859: Pull complete 89362eaac850: Pull complete d76c23323cb4: Pull complete f7a113d2d566: Pull complete f7ffd00be2be: Pull complete dd678d267c76: Pull complete 97f6f322fa52: Pull complete 51d085dee99e: Pull complete Digest: sha256:29918ba10b2960ee304e0231fd62b9f9acbb5795aa978d52ab8bb1a9b0ce8fa7 Status: Downloaded newer image for tomcat:8
3-2. 이미지 확인
# docker images REPOSITORY TAG IMAGE ID CREATED SIZE tomcat 8 df50c9d355cf 17 hours ago 463MB
3-3. 실행
# docker run -d -i -t -p 8080:8080 tomcat:8 f537532e716c3d968804c9c096d5a42afcb817d79d14dbbc13c4cb4f3d1563a3
3-4. 실행 확인
# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES f537532e716c tomcat:8 "catalina.sh run" 35 seconds ago Up 33 seconds 0.0.0.0:8080->8080/tcp reverent_darwin
3-5. 리부팅
docker restart [ID] 커맨드를 이용한다.
4. 테스트
4-1. 기본 화면 호출
- 환경에 따라 알아서..
- 혹은 curl http://localhost:8080
4-2. 테스트 화면 배포
이런 test.jsp 를 만들어보자.
<% out.print("This is test"); %>
그리고 test.jsp를 도커 톰캣으로 넘겨줌.
# docker cp ~/test.jsp reverent_darwin:/usr/local/tomcat/webapps/ROOT
참고로 위의 reverent_darwin 는 내가 별도로 도커 이름을 지정안해서 임의로 지정된 것임.
물론 이름을 바꿀 수 있다. 아래는 sharp_mirzakhani라는 임의의 이름이 지정된 상태인데..
$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7b867d7794fa tomcat:8 "catalina.sh run" 16 minutes ago Up 6 minutes 0.0.0.0:8080->8080/tcp sharp_mirzakhani
docker rename 하면 이름을 변경할 수 있다. tomcat8_1로 바꿔보자.
$ docker rename sharp_mirzakhani tomcat8_1 $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7b867d7794fa tomcat:8 "catalina.sh run" 16 minutes ago Up 7 minutes 0.0.0.0:8080->8080/tcp tomcat8_1
4-3. 테스트 화면 호출
- 환경에 따라 알아서..
- 혹은 curl http://localhost:8080/test.jsp
# curl http://localhost:8080/test.jsp This is test
5. 이미지 생성
기본 tomcat 이미지에 위 test.jsp를 추가한 컨테이너를 이미지화해보자.
$ docker commit -m "initial commit" -a "tomcat8_my_inmage" tomcat8_1 tomcat8:0.1
이미지 목록을 확인.
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE tomcat8 0.1 961644e963a6 7 seconds ago 463MB tomcat 8 f3159377bac1 7 days ago 463MB tomcat <none> df50c9d355cf 5 weeks ago 463MB
이미지 삭제
$ docker rmi [IMAGE_ID]