S++

千线一眼

导航

Docker入门(10):Dockerfile构建centos+tomcat+jdk

准备

tomcat压缩包,jdk压缩包
下面的配置根据自己的jdk、tomcat版本灵活修改
压缩包

编写Dockerfile

创建存放dockerfile的文件夹

sudo mkdir /home/dockerfiles

编写自己的dockerfile

sudo vim /home/dockerfiles/dockerfile-tomcat

添加以下内容

FROM centos:7
# 作者
MAINTAINER sjj<2039274074@qq.com>

# 添加压缩包
ADD jdk-8u321-linux-x64.tar.gz /usr/local/
ADD apache-tomcat-9.0.58.tar.gz /usr/local/
# 工作目录
ENV MYPATH /usr/local
WORKDIR $MYPATH

# 环境配置
ENV JAVA_HOME /usr/local/jdk1.8.0_321
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

ENV CATALINA_HOME /usr/local/apache-tomcat-9.0.58
ENV CATALINA_BASH /usr/local/apache-tomcat-9.0.58
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin

# 安装软件
RUN yum -y install vim
RUN yum -y install net-tools

# 暴露端口
EXPOSE 8080

CMD /usr/local/apache-tomcat-9.0.58/bin/startup.sh && tail -F /usr/local/apache-tomcat-9.0.58/bin/logs/catalina.out

使用dockerfile

生成镜像

docker build -f /home/dockerfiles/dockerfile-tomcat --tag sjj/tomcat:latest .

我们查看一下镜像

docker images
images
我们可以看见这个就是我们自己创造的镜像了

运行自己的镜像

docker run --name my-tomcat \
-p 8080:8080  \
-v /home/sjj/tomcat/webapps/test:/usr/local/apache-tomcat-9.0.58/webapps/test \
-v /home/sjj/tomcat/logs:/usr/local/apache-tomcat-9.0.58/logs \
-d sjj/tomcat

运行结果
我们看见挂载也没有问题

检测

访问机器IP:8080

访问

创建文件

sudo mkdir /home/sjj/tomcat/webapps/test/WEB-INF/
cd /home/sjj/tomcat/webapps/test/WEB-INF/
  • 编辑web.xml文件
sudo vim 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.html文件
sudo vim index.html

随便写个页面

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>tomcat测试</title>
</head>
<body>
 
<h1>测试</h1>

<div>
  <p>
    <font color=#006400>呀吼~~~~~</font>
  </p>
</div>
 
</body>
</html>

访问test 机器IP:8080/test

成功🎆
测试

发布镜像到DockerHub

前提

拥有自己的DockerHub账号

登录docker

docker login -u 用户名 -p 密码

提交镜像

修改tag(不修改很有可能被拒绝

docker tag 源镜像:版本 修改镜像:版本

上传镜像

docker push 修改镜像:版本

上传

查看自己的镜像是否上传成功
成功,嚯嚯嚯

posted on 2022-02-20 18:34  S++  阅读(208)  评论(0)    收藏  举报