美文网首页
通过dockerfile文件创建tomcat容器并上传至dock

通过dockerfile文件创建tomcat容器并上传至dock

作者: 不改青铜本色 | 来源:发表于2018-11-17 16:17 被阅读0次

    通过dockerfile文件创建tomcat容器并上传至docker仓库

    对于传统服务器环境的搭建,只能作用于当前的服务器,如果换成另一个服务器,那么之前的环境都需要再重新搭建一次,效率比较低下,docker服务基于镜像创建和使用,当我们完成一个环境的搭建后,可以将当前服务打包成镜像上传到镜像仓库上,当我们在别的服务器需要使用这个环境的时候,只需要重新下载启动该镜像就可以了

    制作基于tomcat的dockerfile文件

    准备环境
    • 首先我们需要去tomcat官网下载tomcat包,从conf文件夹下获取server.xml文件,这个文件是我们需要重新编辑的
    • 准备一个可以运行的war包程序,启动tomcat服务,查看程序是否可以正常运行
    编写dockerfile文件
    FROM tomcat:8.0-jre8
    
    #作者
    MAINTAINER W2G
    
    #定义工作目录
    ENV WORK_PATH /usr/local/tomcat/conf
    
    #定义要替换的server.xml文件名
    ENV SERVER_CONF_FILE_NAME server.xml
    
    #删除原文件server.xml
    RUN rm $WORK_PATH/$SERVER_CONF_FILE_NAME
    
    #复制文件server.xml
    COPY  ./$SERVER_CONF_FILE_NAME $WORK_PATH/
    

    在这里需要注意

    • FROM后面是需要下载的tomcat的版本号,这里大家可以上网易蜂巢上查看,网易蜂巢上也有很多别人已经构建好的镜像,这里需要注意的是我一开始使用8.0.46-jre7-alpine作为基础镜像但是构造的容器不行,后来换成了上面的那个版本就可以了
    • 文件中的server.xml文件就是我们重新编辑的文件,主要是修改端口号,定义war包等
    将当前dockerfile打包成镜像文件

    此处需要注意

    • 首先进入dockerfile文件所在目录下
    • 此处需要注意的是,正确的写法是docker build -t w2gtomcat:0.0.1 .后面需要带上这个空格和.
      当出现下图就是built成功



      这时候查看镜像就可以看到我们生成的镜像了

    启动该镜像文件
    docker run -dit --net=host --name image_tomcat -p 10003:80 -e JAVA_OPTS='-Xmx512m' -v /etc/localtime:/etc/localtime:ro -v /opt/image_tomcat/webapps:/usr/local/tomcat/webapps 5d859994672d
    

    此处主要是启动刚才我们创建的镜像,主要有以下几点需要注意

    • --name后面是当前启动的容器名称
    • -p是我们需要映射的端口号
    • -v是我们需要映射的文件,此处我需要映射war包的启动路径
      下面是我启动成功的war包文件


      image.png

    将创建成功的容器打包成镜像并上传至docker仓库

    首先登录hub.docker.com,在该网站创建自己的账号,然后在服务器进行登录操作


    4.png

    登录成功后,首先将当前正在运行的服务停下,将当前服务打包成镜像文件并提交

    docker commit -a "w2g" -m "test for tomcat" image_tomcat xxxxxxx/image_tomcat
    

    此处需要注意

    • -a是提交的作者名
    • image_tomcat 是当前打包容器的名称
    • xxxxxxx/image_tomcat是打包镜像的名称

    提交成功后,查看镜像,我们会发现刚才提交的镜像

    将镜像上传至docker仓库
    docker push xxxxxxx/imageTomcat:0.0.1
    

    将镜像上传成功后,可以在镜像仓库中看到我们刚刚提交的镜像文件


    至此,我们从构建dockerfile文件到将服务打包成镜像文件上传至仓库就全部写完了

    恒大兽腰-保利尼奥!

    相关文章

      网友评论

          本文标题:通过dockerfile文件创建tomcat容器并上传至dock

          本文链接:https://www.haomeiwen.com/subject/mcgbfqtx.html