docker 学习(八) docker file
一 什么是Dockerfile:
Dockerfile是由一系列命令和参数构成的脚本,这些命令应用于基础镜像并最终创建一个新的镜像。它们简化了从头到尾的流程并极大的简化了部署工作。Dockerfile 从FROM命令开始,紧接着跟随者各种方法,命令和参数。其产出为一个新的可以用于创建容器的镜像。
二 一个简单的Play Framework项目的dockerfile
FROM openjdk:8-jre-alpine ARG PACKAGE="projectName-1.0.0-SNAPSHOT-dist.zip" COPY target/${PACKAGE} /${PACKAGE} RUN mkdir /build && \ unzip /${PACKAGE} -d /build EXPOSE 9000 ENTRYPOINT ["java", "-Dhttp.address=0.0.0.0", "-Dhttp.port=9000", "-cp", "/build/*", "play.core.server.ProdServerStart"]
FROM: 指定基础镜像,基础镜像是必须指定的。而 FROM 就是指定基础镜像,因此一个 Dockerfile 中 FROM 是必备的指令,并且必须是第一条指令
ARG 构建参数: 设置环境变量。所不同的是, ARG 所设置的构建环境的 环境变量,在将来容器运行时是不会存在这些环境变量的。
expose :暴露端口,但不映射到宿主机,只被连接的服务访问。仅可以指定内部端口为参.
ENTRYPOINT : 指定容器启动程序及参数
三 : 用docker build命令生成dockers 鏡像
docker build -t imagename . (注意後面有個點)