构建一个Tomcat 镜像
-
准备Tomcat和jdk的包
wget https://dlcdn.apache.org/tomcat/tomcat-8/v8.5.82/bin/apache-tomcat-8.5.82.tar.gz
wget https://packages.baidu.com/app/jdk-8/jdk-8u121-linux-x64.tar.gz
-
编写Dockerfile脚本
FROM centos ##指定作者信息## MAINTAINER hdzs<3278347622@qq.com> COPY 123.txt /usr/local/123.txt ##往容器里面添加jdk tomcat的包 会自动解压## ADD jdk-8u121-linux-x64.tar.gz /usr/local/ ADD apache-tomcat-8.5.82.tar.gz /usr/local/ ##给原始镜像安装一些常用的功能## RUN cd /etc/yum.repos.d/ RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-* RUN yum makecache RUN yum update -y RUN yum -y install vim RUN yum -y install net-tools ###进入默认的工作目录### ENV MYPATH /usr/local WORKDIR $MYPATH ###配置JAVA环境变量 以及Tomcat#### ENV JAVA_HOME /usr/local/jdk1.8.0_121 ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar ENV CATALINA_HOME /usr/local/apache-tomcat-8.5.82 ENV CATALINA_BASH /usr/local/apache-tomcat-8.5.82 ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin EXPOSE 8080 ##执行启动命令和查看日志## CMD /usr/local/apache-tomcat-8.5.82/bin/startup.sh && tail -F /usr/local/apache-tomcat-8.5.82/bin/logs/catalins.out
-
开始构建镜像
####docker build -t 名字 . ###
docker build -t hdzstomcat .
- 开始运行
##开始运行 并指定了映射端口和路径##
docker run -d -p 9090:8080 --name hdzstomcat -v /opt/wblx/tomcat/test/:/usr/local/apache-tomcat-8.5.82/webapps/test/ -v /opt/wblx/tomcat/logs/:/usr/local/apache-tomcat-8.5.82/logs/ 3bbc46dbce36
- 在test下面新建 WEB-INF 并进入编写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>
- 下test下面 编写index.jsp 内容如下
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
<title>snow</title>
<style>
body,html{
margin: 0;
padding: 0;
overflow: hidden;
height: 100%;
background: black;
}
.snow{
background: white;
position: absolute;
width: 20px;
height: 20px;
border-radius: 50%;
}
</style>
</head>
<body>
<script>
//获取屏幕宽高
var windowWidth = window.screen.width;
var windowHeight = window.screen.height;
//创建雪花
function createSnow(){
var left = 0;
var top = 0;
//定义一个初始化随机数,使雪花在屏幕中
var left_random = Math.random() * windowWidth;
var top_random = Math.random()* windowHeight;
var div = document.createElement('div');
div.className = 'snow';
div.style.transform = 'scale('+(Math.random())+')'
document.body.appendChild(div);
//雪花飘落
setInterval(function () {
div.style.left = left_random + left +'px';
div.style.top = top_random + top +'px'
left += 0.2;
top += 0.2;
//如果雪花跑到屏幕外面了,让雪花重新返回屏幕顶部
if(left_random + left >= windowWidth){
left_random = Math.random();
left = 0;
}
if(top_random + top >= windowHeight){
top_random = Math.random();
top = 0;
}
},10)
}
for(var i = 0 ; i < 200 ; i++){
createSnow()
}
</script>
</body>
</html>
-
访问 http://39.107.252.218:9090/test/#
成功