1、筹备创立好本人的目录
[root@paperchen paperchen]# pwd
/home/paperchen
[root@paperchen paperchen]# mkdir -p build/tomcat
[root@paperchen tomcat]# pwd
/home/paperchen/build/tomcat
2、在上述 pwd 的目录,即 tomcat 目录中创立文件等
touch readme.txt
vim Dockerfile
# vim Dockerfile
FROM centos
MAINTAINER paperchen<609120776@qq.com>
# 把宿主机以后上下文的 readme.txt 拷贝到容器 /usr/local/ 门路下
COPY readme.txt /usr/local/cincontainer.txt
# 把 java 和 tomcat 增加到容器中(会主动解压)ADD jdk-8u201-linux-x64.tar.gz /usr/local/
ADD apache-tomcat-9.0.24.tar.gz /usr/local/
# 装置 vim 编辑器
RUN yum -y install vim
# 设置启动拜访的初始地位,即工作目录,登录落脚点
ENV MYPATH /usr/local
WORKDIR $MYPATH
# 配置 java 和 tomcat 的环境变量
ENV JAVA_HOME /usr/local/jdk1.8.0_201
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINE_HOME /usr/local/apache-tomcat-9.0.24
ENV CATALINE_BASE /usr/local/apache-tomcat-9.0.24
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINE_HOME/lib:$CATALINE_HOME/bin
EXPOSE 8080
# 容器启动后要执行的命令
CMD /usr/local/apache-tomcat-9.0.24/bin/startup.sh && tail -F /usr/local/apache-tomcat-9.0.24/bin/logs/catalina.out
3、以后 tomcat 目录下的所有文件内容
[root@paperchen tomcat]# ls -ll
total 197996
-rw-r--r-- 1 root root 10914435 Oct 6 08:46 apache-tomcat-9.0.24.tar.gz
-rw-r--r-- 1 root root 646 Oct 6 09:20 Dockerfile
-rw-r--r-- 1 root root 191817140 Oct 6 09:06 jdk-8u201-linux-x64.tar.gz
-rw-r--r-- 1 root root 0 Oct 6 08:44 readme.txt
4、在 tomcat 下构建镜像、查看镜像
当 dockerfile 文件间接命名为 Dockerfile
,且在同一目录下时能够省略 -f dockerfile 文件门路
[root@paperchen tomcat]# docker build -t paperchen/diytomcat
......
Successfully built b64cda437ad2
Successfully tagged paperchen/diytomcat:latest
查看构建后的镜像,确认构建胜利
[root@paperchen tomcat]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
paperchen/diytomcat latest b64cda437ad2 37 minutes ago 684MB
5、运行启动构建的镜像
[root@paperchen tomcat]# docker run -d --privileged=true -p 9090:8080 --name mydiytomcat -v /home/paperchen/build/tomcat/test:/usr/local/apache-tomcat-9.0.24/webapps/test -v /home/paperchen/build/tomcat/tomcat9logs/:/usr/local/apache-tomcat-9.0.24/logs paperchen/diytomcat
测试拜访:
curl localhost:9090
或间接外网拜访如:IP:9090
6、联合数据卷内容在内部间接公布测试利用 test
[root@paperchen test]# pwd
/home/paperchen/build/tomcat/test
[root@paperchen test]# mkdir WEB-INF
[root@paperchen test]# cd WEB-INF/
[root@paperchen WEB-INF]# vim web.xml
[root@paperchen WEB-INF]# cd ..
[root@paperchen test]# vim index.jsp
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>
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>hello,paperchen</title>
</head>
<body>
-----------welcome------------
<br>
"my docker tomcat,paperchen"
<br>
<%
System.out.println("-------my docker tomcat-------");
%>
</body>
</html>
测试拜访:
curl localhost:9090/test/index.jsp
或间接外网拜访如:IP:9090/test/index.jsp
胜利!
7、查看日志信息
[root@paperchen tomcat]# cd tomcat9logs/
[root@paperchen tomcat9logs]# ls -ll
total 24
-rw-r----- 1 root root 6995 Oct 6 09:30 catalina.2020-10-06.log
-rw-r----- 1 root root 7057 Oct 6 09:37 catalina.out
-rw-r----- 1 root root 0 Oct 6 09:26 host-manager.2020-10-06.log
-rw-r----- 1 root root 406 Oct 6 09:26 localhost.2020-10-06.log
-rw-r----- 1 root root 245 Oct 6 09:37 localhost_access_log.2020-10-06.txt
-rw-r----- 1 root root 0 Oct 6 09:26 manager.2020-10-06.log
[root@paperchen tomcat9logs]# cat catalina.out
......
-------my docker tomcat-------
-------my docker tomcat-------
谢谢您看完这篇技术文章
如果能对您有所帮忙
那将是一件很美妙的事件
放弃好奇心的一生学习也是极棒的事
愿世界简略又多彩
转载请注明出处
——纸飞机