njsuntop 发表于 2018-11-30 13:37:25

docker 制作tomcat 镜像并应用

  tomcat支持自主应用并对外开放端口:
  

  1、制作Dockerfile
  以centos为基础,远程ssh登录:新建Dockerfile,编辑如下:
FROM tomcat
MAINTAINER ******************
ADD web.xml /usr/local/tomcat/webapps/manager/WEB-INF/
ADD tomcat-users.xml /usr/local/tomcat/conf/
ADD server.xml /usr/local/tomcat/conf/
ADD catalina.sh /usr/local/tomcat/bin/
RUN chmod +x /usr/local/tomcat/bin/catalina.sh
ADD ******.war /usr/local/tomcat/webapps/
RUN echo "Asia/shanghai" > /etc/timezone
EXPOSE 8080  此处提交了一个******.war的应用,其它server.xml等文件则用于后续使得tomcat可登陆后台;
  并且改变了时区
  

  2、我们制作一个yz tag 的镜像:
# docker build -t tomcat:yz .
Sending build context to Docker daemon 80.58 MB
Sending build context to Docker daemon
Step 0 : FROM tomcat
latest: Pulling from tomcat
2e05a52ffd47: Pull complete
9fdaeae348bb: Pull complete
67d05086af43: Pull complete
2e9d1ec89d66: Pull complete
1afb0d51eee0: Pull complete
5cb24a57fa37: Pull complete
110c2f290b04: Pull complete
966dcd51a14f: Pull complete
8a57ce404f1b: Pull complete
e1b97b980d07: Pull complete
548f21c48132: Pull complete
3e93be06ad38: Pull complete
3e2882dd7e87: Pull complete
4ef5a14c7b39: Pull complete
fca011d2612a: Pull complete
119ddf0db1a7: Pull complete
1b8329afb263: Pull complete
1b8329afb263: Pulling fs layer
6d1ae97ee388: Already exists
tomcat:latest: The image you are pulling has been verified. Important: image verification is a tech preview feature and should not be relied on to provide security.
Digest: sha256:6880839ca278600ea2a853455dd73c8ec8db9c0860d4aafc4a2b8b4d23dcdd85
Status: Downloaded newer image for tomcat:latest
---> 1b8329afb263
Step 1 : MAINTAINER ******************
---> Running in 18c800bbf944
---> f526d4086617
Removing intermediate container 18c800bbf944
Step 2 : ADD web.xml /usr/local/tomcat/webapps/manager/WEB-INF/
---> ee852f920b73
Removing intermediate container 8803896bc055
Step 3 : ADD tomcat-users.xml /usr/local/tomcat/conf/
---> 4d749dd1c611
Removing intermediate container bb651ecd1588
Step 4 : ADD server.xml /usr/local/tomcat/conf/
---> be14c5521112
Removing intermediate container 891d6c70b689
Step 5 : ADD catalina.sh /usr/local/tomcat/bin/
---> e73227bf617a
Removing intermediate container 34069fcf1241
Step 6 : RUN chmod +x /usr/local/tomcat/bin/catalina.sh
---> Running in b7b5d5123ec5
---> fa85b8df4062
Removing intermediate container b7b5d5123ec5
Step 7 : ADD *******.war /usr/local/tomcat/webapps/
---> 8a9c3b048437
Removing intermediate container 104b4652b69d
Step 8 : RUN echo "Asia/shanghai" > /etc/timezone
---> Running in 1c6260e3f6ae
---> 9be29399285f
Removing intermediate container 1c6260e3f6ae
Step 9 : EXPOSE 8080
---> Running in dc015b13ba50
---> efa62af7320e
Removing intermediate container dc015b13ba50
Successfully built efa62af7320e  每一条命令会执行一个container,依次运行
  初始阶段会自动下载tomcat原始镜像,而后复制文件、打开端口等
  

  3、测试制作好的镜像:
docker run -d --name yz-tomcat -p 8080:8080 tomcat:yz  命名为yz-tomcat,对外映射宿主机8080端口。
  

  4、打开网页测试
http://s3.运维网.com/wyfs02/M02/77/71/wKioL1Zn7BSBoNFDAAOkAVlAZM8360.jpg完美运行
  

  5、测试登录后台
  点击红圈中的manage app,使用预设的密码登录(tomcat-users.xml中配置)
http://s5.运维网.com/wyfs02/M02/77/73/wKiom1Zn7D6BNk9FAAVYKNHeClo891.jpg
  OK
  结束



页: [1]
查看完整版本: docker 制作tomcat 镜像并应用