Docker学习(应用容器化)

时间:2024-03-20 10:58:15

应用容器化(Docker化)

完整的应用容器化过程主要分为以下几个步骤。
  • (1) 编写应用代码。
  • (2) 创建一个Dockerfile, 其中包括当前应用的描述、 依赖以及该如何运行这个应用。
  • (3) 对该Dockerfile执行docker image build 命令。
  • (4) 等待Docker将应用程序构建到Docker镜像中。
一旦应用容器化完成(即应用被打包为一个Docker镜像) , 就能以镜像的形式交付并以容器的方式运行了

Docker学习(应用容器化)

分析Dockerfile文件的构成
  • Dockerfile主要包括两个用途。
    • 对当前应用的描述。
    • 指导Docker完成应用的容器化( 创建一个包含当前应用的镜像) 。
  • Dockerfile文件的构成
    • 每个Dockerfile文件第一行都是FROM 指令。 FROM 指令指定的镜像会作为当前镜像的一个基础镜像层, 当前应用的剩余内容会作为新增镜像层添加到基础镜像层之上。
    • Dockerfile中通过MAINTAINER 字段指定了当前镜像的维护者
    • ENV key_value 设置环境变量(可以写多条例如安装JAVA环境时设置JAVA_HOME等环境变量)
    • RUN command(例如mkdir test之类的命令)
    • ADD 源目录或文件 目的目录或文件 :将宿主机的文件复制到容器内,如果是一个压缩文件,复制后会自动解压。
    • COPY 源文件 目的文件:(同ADD,只不过不会自动解压)
    • WORKDIR path_dir:设置工作目录
创建一个jdk环境的镜像的例子:
  • 下载linux版本的jdk1.8安装包(tar),然后通过mobaXterm,上传到指定的目录
  • 编写Dockerfile文件(D大写)
    Docker学习(应用容器化)
  • 执行docker build -t='jdk1.8' .构建镜像(其中-t指定名称,. 代表Dockerfile的目录为当前目录)
    Docker学习(应用容器化)
  • 至此,镜像创建完毕。