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

我们可以看见这个就是我们自己创造的镜像了
运行自己的镜像
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 修改镜像:版本

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

浙公网安备 33010602011771号