Docker学习(19)——利用DockerFile制作tomcat镜像

本文详细介绍了如何使用Docker构建包含Tomcat 9.0.22和JDK 8的镜像,从下载压缩包到编写Dockerfile,再到构建镜像、启动容器并进行本地和外网测试。此外,还展示了如何创建web应用的web.xml和index.jsp,并对外网测试结果进行了验证。最后,提到了查看日志的方法。
摘要由CSDN通过智能技术生成

(1)压缩包

apache-tomcat-9.0.22.tar.gz 下载地址:https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.22/bin/

jdk-8u60-linux-x64.tar.gz

(2)编写Dockerfile

Dockerfile

FROM centos
MAINTAINER dong<7712199@qq.com>

COPY readme.txt /usr/local/readme.txt

ADD jdk-8u60-linux-x64.tar.gz /usr/local/
ADD apache-tomcat-9.0.22.tar.gz /usr/local/

RUN yum -y install vim

ENV MYPATH /usr/local
WORKDIR $MYPATH

ENV JAVA_HOME /usr/local/jdk1.8.0_60
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/apache-tomcat-9.0.22
ENV CATALINA_BASH /usr/local/apache-tomcat-9.0.22
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin

EXPOSE 8080

CMD /usr/local/apache-tomcat-9.0.22/bin/startup.sh && tail -F /usr/local/apache-tomcat-9.0.22/bin/logs/catalina.out

(3)构建镜像

[root@192 tomcat]# docker build -t dong_tomcat .

执行成功如下图所示:

Successfully built 0b71a90fed81
Successfully tagged dong_tomcat:latest
[root@192 tomcat]# docker images
REPOSITORY            TAG       IMAGE ID       CREATED          SIZE
dong_tomcat           latest    0b71a90fed81   31 seconds ago   684MB
[root@192 tomcat]# 

(4)启动镜像

[root@192 tomcat]# docker run -d -p 9090:8080 --name dongdongtomcat -v /home/docker/tomcat/test:/usr/local/apache-tomcat-9.0.22/webapps/test -v /home/docker/tomcat/tomcatlogs:/usr/local/apache-tomcat-9.0.22/logs dong_tomcat
42e22c4adc09713a71edbddd4c20a28f8f6894779330346aabe00b16cb80c851
[root@192 tomcat]# 

(5)进入容器

[root@192 tomcat]# docker exec -it 42e22c4adc09713a71e /bin/bash
[root@42e22c4adc09 local]# ls
apache-tomcat-9.0.22  bin  etc	games  include	jdk1.8.0_60  lib  lib64  libexec  readme.txt  sbin  share  src
[root@42e22c4adc09 local]# pwd           -------------注释:默认路径为/usr/local
/usr/local
[root@42e22c4adc09 local]# cd apache-tomcat-9.0.22/
[root@42e22c4adc09 apache-tomcat-9.0.22]# ls
BUILDING.txt  CONTRIBUTING.md  LICENSE	NOTICE	README.md  RELEASE-NOTES  RUNNING.txt  bin  conf  lib  logs  temp  webapps  work
[root@42e22c4adc09 apache-tomcat-9.0.22]# 

(6)本地测试

[root@192 tomcat]# curl localhost:9090



<!DOCTYPE html>         -------------------注释:成功访问
<html lang="en">
    <head>
        <meta charset="UTF-8" />
        <title>Apache Tomcat/9.0.22</title>
        <link href="favicon.ico" rel="icon" type="image/x-icon" />
        <link href="favicon.ico" rel="shortcut icon" type="image/x-icon" />
        <link href="tomcat.css" rel="stylesheet" type="text/css" />
    </head>
...

(7)外网测试

 (8)创建web.xml和index.jsp

web.xml

[root@192 test]# ls
index.jsp  WEB-INF
[root@192 test]# cd WEB-INF/
[root@192 WEB-INF]# ls
web.xml
[root@192 WEB-INF]# pwd
/home/docker/tomcat/test/WEB-INF
[root@192 WEB-INF]# cat web.xml 
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         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"
         version="4.0"
         metadata-complete="true">
</web-app>
[root@192 WEB-INF]# 

index.jsp

[root@192 test]# ls
index.jsp  WEB-INF
[root@192 test]# pwd
/home/docker/tomcat/test
[root@192 test]# cat index.jsp 
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>文件上传实例</title>
</head>
<body>
<h1>文件上传实例</h1>
<form method="post" action="/TomcatTest/UploadServlet" enctype="multipart/form-data">
    选择一个文件:
    <input type="file" name="uploadFile" />
    <br/><br/>
    <input type="submit" value="上传" />
</form>
</body>
</html>
[root@192 test]# 

(9)外网测试

http://192.168.0.105:9090/test/

 测试成功。

(10)查看日志

[root@192 tomcat]# ls
apache-tomcat-9.0.22.tar.gz  Dockerfile  jdk-8u60-linux-x64.tar.gz  readme.txt  test  tomcatlogs
[root@192 tomcat]# cd tomcatlogs/
[root@192 tomcatlogs]# ls
catalina.2021-10-11.log  host-manager.2021-10-11.log  localhost_access_log.2021-10-11.txt
catalina.out             localhost.2021-10-11.log     manager.2021-10-11.log
[root@192 tomcatlogs]# cat catalina.out
...
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值