ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Dockerfile制作tomcat镜像,解决404问题

2021-10-05 15:59:40  阅读:137  来源: 互联网

标签:文件 22 tomcat Dockerfile 404 usr apache local


Dockerfile制作tomcat镜像


首先准备好JDK和tomcat的压缩包tar.gz文件

编写Dockerfile文件

官方命名Dockerfile,build会自动寻找这个文件,就不需要-f指定。

vim Dockerfile
FROM centos
MAINTAINER lieonchou<email_address>
COPY readme.txt /usr/local/readme.txt #将所写的readme.txt文件复制到容器内部
ADD  jdk-8u11-linux-x64.tar.gz  /usr/local/      #添加文件,解压路径
ADD apache-tomcat-9.0.22.tar.gz /usr/local       #添加文件,解压路径
ENV MYPATH /usr/local
WORKDIR   $MYPATH
 ENV JAVA_HOME /usr/local/jdk1.8.0_11
 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

构建镜像

docker build -t diytomcat .    #最后的点表示当前目录

查看镜像

docker images

在这里插入图片描述

运行镜像

docker run -d -p 9090:8080 --name lieontomcat -v /home/lieon/build/tomcat/test:/urs/local/apache-tomcat-9.0.22/webapps/test -v /home/lieon/build/tomcat/tomcatlogs/:/usr/local/apache-tomcat-9.0.22/logs diytomcat

进入容器

docker exec -it [容器id] /bin/bash
pwd                 #查看默认路径

外网访问

ip:9090

本地测试

进入挂载的文件夹test

cd /home/lieon/build/tomcat/test
ls         #查看目录

在文件中进行操作

mkdir WEB-INF    #创建文件夹
vim   web.xml       #测试网站需要添加此文件,不同的tomcat有不同的配置
vim  index.jsp      

创建xml 配置文件

在tomcat的webapps/ROOT/WEB-INF中,如下图所示

<web-app xmlns="https://jakarta.ee/xml/ns/jakartaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee
                      https://jakarta.ee/xml/ns/jakartaee/web-app_5_0.xsd"
  version="5.0"
  metadata-complete="true">

  <display-name>Welcome to Tomcat</display-name>
  <description>
     Welcome to Tomcat
  </description>

</web-app>

创建jsp文件

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>hello,Lieon</title>
</head>
<body>
Hello World!<br/>
<%
System.out.println("------mytestweblogs------");
%>
</body>
</html>

查看网页

ip:9090/test

这里会有一个问题,访问时出现404错误,这是因为我们将index.jsp文件放在了WEB-INF中,/WEB-INF是访问受限制的,jsphtml文件不能放在这个文件夹下。

在这里插入图片描述

修改index.jsp文件存放的的路径

将其直接放在test目录下,再次打开网页就成功了。
在这里插入图片描述

查看日志

cd     /home/lieon/tomcatlogs   #进入日志目录
ls       # 列出目录找到catalina.out文件,并输出

在这里插入图片描述

cat catalina.out      #输出日志

每访问一次网页都会增加一条记录。
在这里插入图片描述

标签:文件,22,tomcat,Dockerfile,404,usr,apache,local
来源: https://blog.csdn.net/weixin_45181388/article/details/120612104

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有