目录
一、准备开发环境包
准备镜像文件所需的Tomcat压缩包和JDK压缩包,readme.txt里的内容随便写。

二、编写DockerFile文件
bash
FROM centos
MAINTAINER wangzhexiao
COPY readme.txt /home/wzx/app/
ADD jdk-8u421-linux-x64.tar.gz /home/wzx/app/
ADD apache-tomcat-9.0.95.tar.gz /home/wzx/app/
RUN yum -y install vim
ENV WORKPATH /home/wzx/app
WORKDIR $WORKPATH
ENV JAVA_HOME /home/wzx/app/jdk1.8.0_421
ENV CATALINA_HOME /home/wzx/app/apache-tomcat-9.0.95
ENV CATALINA_BASH /home/wzx/app/apache-tomcat-9.0.95
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
EXPOSE 8080
CMD /home/wzx/app/apache-tomcat-9.0.95/bin/startup.sh && tail -F /home/wzx/app/apache-tomcat-9.0.95/bin/logs/catalina.out

三、构建镜像
bash
docker build -f dockfile -t mytomcat:1.0 .

四、运行镜像
bash
docker run -d -p 3386:8080 --name wzx-tomcat -v /home/wzx/tomcat/test:/home/wzx/app/apache-tomcat-9.0.22/webapps/test -v /home/wzx/tomcat/testlogs/:/home/wzx/apache-tomcat-9.0.22/logs mytomcat:1.0

五、访问镜像

我们在宿主机挂载目录/home/wzx/tomcat/test下分别创建目录及文件:
index.jsp
WEB-INF/web.xml

web.xml里的代码如下:
XML
<?xml version="1.0" encoding="UTF-8"?>
<web-app
version="4.0"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:javaee="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
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">
</web-app>
index.jsp代码如下:
html
Hello World!
如下图所示,访问成功 。我们本章通过tomcat服务器运行JavaWeb程序的镜像就此构建运行成功。

六、发布镜像到DockerHub
-
地址 https://hub.docker.com/ 注册自己的账号!
-
已有账号的确定账号密码可以登录
-
在本地服务器提交自己的镜像

登录后push自己本地镜像即可
bash
docker push 镜像:版本