实战: Tomcat镜像
1、首先准备镜像tomcat压缩包、jdk压缩包
2、编写dockerfile文件,官方命名 Dockerfile,build 的时候自动寻找这个文件,就不需要-f指定了
FROM centos
MAINTAINER liulihui<[email protected]>
COPY readme.txt /usr/local/readme.txt
ADD jdk-8u231-linux-x64.tar.gz /usr/local/
ADD apache-tomcat-8.5.50.tar.gz /usr/local/
ENV MYPATH /usr/local
WORKDIR $MYPATH
ENV JAVA_HOME /usr/local/jdk1.8.0_231
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/apache-tomcat-8.5.50
ENV CATALINA_BASH /usr/local/apache-tomcat-8.5.50
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin
EXPOSE 8080
CMD /usr/local/apache-tomcat-8.5.50/bin/startup.sh && tail -f /usr/local/apache-tomcat-8.5.50/logs/catalina.out
3、构建镜像
[root@liulihui tomcat]# docker build -t diytomcat .
4、启动镜像
# 查看镜像
[root@liulihui tomcat]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
diytomcat latest 151a2aa6587a 22 seconds ago 649MB
# 启动镜像 diytomcat
[root@liulihui tomcat]# docker run -d -p 9090:8080 --name liulihuitomcat -v /home/liulihui/build/tomcat/test:/usr/local/apache-tomcat-8.5.50/webapps/test -v /home/liulihui/build/tomcat/tomcatlogs/:/usr/local/apache-tomcat-8.5.50/logs diytomcat
5、访问测试
6、发布镜像 (由于做了挂载,直接在本地编写项目就可以发布了!) ,编写web.xml文件
<?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"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
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">
</web-app>
测试 编写 index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>hello liulihui</title>
</head>
<body>
Hello World!<br/>
<%
System.out.println("----- my test web logs--------");
%>
</body>
</html>
访问:http://ip:9090/test/
发现部署成了,可以直接访问ok!