美文网首页
使用Dockerfile构建镜像

使用Dockerfile构建镜像

作者: K1024 | 来源:发表于2018-05-06 09:23 被阅读74次

使用背景

  1. 环境差异需要:屏蔽不同操作系统及OS不同版本带来的安装差异;
  2. 做持续集成需要:做CI/CD的时候,从源码服务器下载代码,本地构建出目标版本后,需要自动打包成容器镜像用于部署;

构建环境

  1. 宿主操作系统:使用VirtualBox在MAC上虚拟的一个Ubuntu操作系统 Ubuntu16.04 LTS版本
  2. Docker Server Version :18.03.1-ce

构建目标

  1. 目标:基于ubuntu原始镜像构建jdk+tomcat的应用环境
  2. 软件版本
  1. 小提示:jdk8最好使用tomcat8版本进行搭配,否则容易出现编译失败的问题

构建脚本及过程

  1. 先创建一个目录docker-tomcat
  • 目录内容参考下图


    image.png
  • 必须的文件说明
    jdk-8u171-linux-x64.tar.gz:用于拷贝到目标镜像中使用;
    apache-tomcat-8.5.31.tar.gz:用于拷贝到目标镜像中使用;
    tomcat7.sh:用于拷贝到目标镜像中使用;
    Dockerfile:用于构建镜像;
  • 非必须文件说明
    jdk1.8.0_171:用于验证解压缩jdk-8u171-linux-x64.tar.gz的命令,及解压缩后的文件目录结构;
    apache-tomcat-8.5.31:用于验证解压缩apache-tomcat-8.5.31.tar.gz的命令,及解压缩后的文件目录结构;
  1. 编写构建的Dockerfile
  • 名字必须是“Dockerfile”

  • Dockerfile文件内容参考如下


    image.png
  • Dockerfile依赖的tomcat7.sh参考如下


    image.png
  • 小提示
    在windows或者网页上拷贝的脚本代码可能在镜像中无法执行,需要现在ubuntu操作系统中完成dos2unix的文件格式转换。

  1. 构建mytomcat镜像
  • 先切换到docker-tomcat目录,在docker控制台执行命令(注意后边有一个. ,表示当前目录):
    docker build -t mytomcat .


    image.png
  • 查看构建出的镜像:
    docker images

  1. 部署镜像启动容器
  • 命令行
    docker run -i -t -p 5000:8080 mytomcat


    image.png
  • 命令行说明
    其中,docker run 用于运行一个容器
    -t 在容器指定一个伪终端或者终端;
    -i 进行命令交互;
    -p 匹配镜像内的网络端口号,即我们可以通过宿主机中访问5000端口来达到访问容器8080端口的目的。

  1. 验证效果
  • 通过浏览器查看


    image.png

相关文章

网友评论

      本文标题:使用Dockerfile构建镜像

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