1:进入linux-centos 在/home 目录中创建dockerfile目录

              创建目录命令:mkdir -p dockerfile  通过 ls 命令查看 结果如下图

              

         2:上传 tomcat,jdk linux的压缩包 如下图所示 tomcat 和jdk版本根据自己实际情况来

            

          3:进入到dockefile文件夹目录中 解压tomcat,jdk

                解压命令jdk:tar -zxvf jdk-8u161-linux-x64.tar.gz

                解压tomcat:tar -zxvf apache-tomcat-9.0.54.tar.gz

                解压完毕如下图所示:

               

               注意:有些文章中没有在此处解压目的是留在dockerfile文件中进行解压 在官方的                                      Dockerfile文件中推荐使用COPY,即个人认为在没有进行远程下载.tar.gz包

                          时直接在需要操作之前解压完毕,直接使用,以便减少生成镜像的层数

              4:在dockerfile 目录下创建 Dockerfile 文件来编写dockerfile镜像文件

                    创建Dockerfile 镜像的命令:vi Dockerfile

                    Dockerfile 内容如下:

                 -----------------------------------start-------------------------------

          

# FROM 关键字 基于镜像
FROM centos:7
# 说明镜像的信息
LABEL author="xiaoqiang65.com"  desc="基于centos 的jdk,tomcat7 的部署web"
# 创建镜像的工作目录
WORKDIR /usr/local
# 创建镜像jdk tomcat存放路径
RUN mkdir -p /usr/local/java && mkdir /usr/local/tomcat
# 从宿主机中复制jdk,tomcat到镜像中 
# 解释为啥此处不用ADD 该命令一般用于远程下拉。tar.gz包时用
COPY jdk1.8.0_161 /usr/local/java
COPY apache-tomcat-9.0.54 /usr/local/tomcat
# 配置jdk环境变量
ENV JAVA_HOME /usr/local/java
ENV PATH $PATH:$JAVA_HOME/bin
# 暴露镜像对外访问的端口
EXPOSE 8080
# 配置启动容器时启动tomcat
CMD ["/usr/local/tomcat/bin/catalina.sh","run"]

                    -----------------------------------end-------------------------------

         最后Dockerfile 镜像文件如图所示

            

            5:构建镜像 

                 当前目录下构建:

                  docker build -f Dockerfile -t webproject:v1 .

                 构建成功之后如图所示:

                

                使用docker images 命令去查看是否生成镜像 如下图所示

              

              6:使用挂载的方式进行

                  在dockerfile 目录中 创建web项目挂载目录:

                   命令:mkdir -p web

                   

                    将项目war包 上传到web目录中 并且修改war包的名字为ROOT.war 如图所示

                  

                     7:使用挂载的方式进行命令:                     

 docker run -di -p 8080:8080 --name myproject -v /home/dockerfile/web:/usr/local/tomcat/webapps --restart=always webproject:v1

              使用上述命令执行成功如图所示:            

 

     访问     192.168.195.10:8080   显示如下图所示       

           

         最后总结:使用docker挂载的方式的最适合war包进行部署

          其他方式则是直接把war包放置在tomcat镜像中 自行操作

                    

                

         

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐