乐趣区

关于docker:使用Dockerfile构建自己的tomcat镜像

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-------

谢谢您看完这篇技术文章

如果能对您有所帮忙

那将是一件很美妙的事件

放弃好奇心的一生学习也是极棒的事

愿世界简略又多彩

转载请注明出处

​ ——纸飞机

退出移动版