步骤:
- 建立tomcat目录
- 在上述目录下新建c.txt文件
- 将jdk和tomcat安装的压缩包拷贝到目录下
- 在目录下新建DockerFile文件并编写内容
- 构建镜像
- 运行容器
- 验证tomcat9
- 结合前述的容器数据局安测试web服务、发布
[linguo@VM-4-6-centos ~]$ mkdir docker_tomcat9[linguo@VM-4-6-centos docker_tomcat9]$ touch c.txt[linguo@VM-4-6-centos docker_tomcat9]$ ll-rw-rw-r-- 1 linguo linguo 11560971 Apr 19 23:42 apache-tomcat-9.0.62.tar.gz-rw-rw-r-- 1 linguo linguo 0 Apr 19 23:14 c.txt-rw-rw-r-- 1 linguo linguo 148003999 Apr 20 00:24 jdk-8u331-linux-x64.tar.gz[linguo@VM-4-6-centos docker_tomcat9]$ vim DockerfileFROM centos:7MAINTAINER linguo<ljb13127893819@163.com>#把宿主机当前上下文的c.txt拷贝到容器/usr/local/路径下COPY c.txt /usr/local/cincontainer.txt#把java和tomcat添加到容器中ADD jdk-8u331-linux-x64.tar.gz /usr/local/ADD apache-tomcat-9.0.62.tar.gz /usr/local/#安装vim编辑器RUN yum -y install vim#设置工作访问时候的WORKDIR路径,登录的落脚点ENV MYPATH /usr/localWORKDIR $MYPATH#配置java与tomcat的环境变量ENV JAVA_HOME /usr/local/jdk1.8.0_331ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarENV CATALINA_HOME /usr/local/apache-tomcat-9.0.62ENV CATALINA_BASE /usr/local/apache-tomcat-9.0.62ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin#容器运行时监听的端口EXPOSE 8080#启动时运行tomcat# ENTRYPOINT ["/usr/local/tomcat-9.0-doc/bin/startup.sh"]# CMD ["/usr/local/tomcat-9.0-doc/bin/startup.sh","run"]CMD /usr/local/apache-tomcat-9.0.62/bin/startup.sh && tail -f /usr/local/apache-tomcat-9.0.62/logs/catalina.out[linguo@VM-4-6-centos docker_tomcat9]$ lltotal 84028-rw-rw-r-- 1 linguo linguo 11560971 Apr 19 23:42 apache-tomcat-9.0.62.tar.gz-rw-rw-r-- 1 linguo linguo 0 Apr 19 23:14 c.txt-rw-rw-r-- 1 linguo linguo 907 Apr 19 23:44 Dockerfile-rw-rw-r-- 1 linguo linguo 74472420 Apr 19 23:29 jdk-8u321-linux-aarch64.tar.gz[linguo@VM-4-6-centos docker_tomcat9]$ docker build -t tomcat9:2.0.[linguo@VM-4-6-centos docker_tomcat9]$ docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEtomcat9 2.0 2a7f0f52a208 5 minutes ago 810MB[linguo@VM-4-6-centos docker_tomcat9]$ docker run -d -p 9080:8080 -v /home/linguo/docker_tomcat9/volume/test:/usr/local/apache-tomcat-9.0.62/webapps/test -v /home/linguo/docker_tomcat9/volume/logs:/usr/local/apache-tomcat-9.0.62/logs --privileged=true 2a7f0f52a208[linguo@VM-4-6-centos docker_tomcat9]$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES73d597d4a22e 2a7f0f52a208 "/bin/sh -c '/usr/lo…" 2 minutes ago Up 2 minutes 0.0.0.0:9080->8080/tcp, :::9080->8080/tcp dazzling_agnesi[linguo@VM-4-6-centos volume]$ docker exec 73d597d4a22e java -versionjava version "1.8.0_331"Java(TM) SE Runtime Environment (build 1.8.0_331-b09)Java HotSpot(TM) 64-Bit Server VM (build 25.331-b09, mixed mode)
验证宿主机的9080端口是否可以访问到tomcat即可。
步骤8:
验证数据卷容器是否生效,在目录下查看tomcat日志是否已经同步、发布jsp文件实验
