Featured image of post DockerFile自定义镜像Tomcat9

DockerFile自定义镜像Tomcat9

目录下载容器卷、创建文件夹、在上述目录下、在上述目录下、将和安装的压缩包拷贝进上一步目录、在目录下新建文件、构建、、验证、结合前述的容器卷将测试的服务发布总结下载容器卷、创建文件夹、在上述目录下、将和。。。。。。。

目录

 

下载tomcat容器卷

1、创建文件夹

2、在上述目录下touch c.txt

3、将jdk和tomcat安装的压缩包拷贝进上一步目录

4、在/heian/mydockerfile/tomcat9目录下新建Dockerfile文件

5、构建

6、run

7、验证

8、结合前述的容器卷将测试的web服务test发布

总结


下载tomcat容器卷

1、创建文件夹

1
mkdir -p /heian/mydockerfile/tomcat9

2、在上述目录下touch c.txt

1
touch c.txt

3、将jdk和tomcat安装的压缩包拷贝进上一步目录

apache-tomcat-9.0.8.tar.gz

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

4、在/heian/mydockerfile/tomcat9目录下新建Dockerfile文件

 

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
FROM         centos
MAINTAINER    heian<1794748404@126.com>
#把宿主机当前上下文的c.txt拷贝到容器/usr/local/路径下
COPY c.txt /usr/local/cincontainer.txt
#把java与tomcat添加到容器中
ADD jdk-8u152-linux-x64.tar.gz /usr/local/
ADD apache-tomcat-8.5.24.tar.gz /usr/local/
#安装vim编辑器
RUN yum -y install vim
#设置工作访问时候的WORKDIR路径,登录落脚点
ENV MYPATH /usr/local
WORKDIR $MYPATH
#配置java与tomcat环境变量
ENV JAVA_HOME /usr/local/jdk1.8.0_152
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/apache-tomcat-8.5.24
ENV CATALINA_BASE /usr/local/apache-tomcat-8.5.24
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin
#容器运行时监听的端口
EXPOSE  8080
#启动时运行tomcat
# ENTRYPOINT ["/usr/local/apache-tomcat-8.5.24/bin/startup.sh" ]
# CMD ["/usr/local/apache-tomcat-8.5.24/bin/catalina.sh","run"]
CMD /usr/local/apache-tomcat-8.5.24/bin/startup.sh && tail -F /usr/local/apache-tomcat-8.5.24/bin/logs/catalina.out

5、构建

1
docker build -f Dockerfile -t heiantomcat9 .

构建完成

6、run

1
docker run -d -p 9080:8080 --name myt9 -v /heian/mydockerfile/tomcat9/test:/usr/local/apache-tomcat-9.0.8/webapps/test -v /heian/mydockerfile/tomcat9/tomcat9logs/:/usr/local/apache-tomcat-9.0.8/logs --privileged=true heiantomcat9

Docker挂载主机目录Docker访问出现cannot open directory .: Permission denied
解决办法:在挂载目录后多加一个–privileged=true参数即可

7、验证

8、结合前述的容器卷将测试的web服务test发布

a.jsp

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
<%@ 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>Insert title here</title>
  </head>
  <body>
    -----------welcome------------
    <%="i am in docker tomcat self "%>
    <br>
    <br>
    <% System.out.println("=============docker tomcat self");%>
  </body>
</html>

web.xml

1
2
3
4
5
6
7
8
9
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://java.sun.com/xml/ns/javaee"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
  id="WebApp_ID" version="2.5">
  
  <display-name>test</display-name>
 
</web-app>

测试

总结