首先我简单说一下容器的一些知识点
- 一个容器只跑一个进程,并且该进程只能前台运行。
- 容器有层的概念,如果需要定制容器,应该尽量通过Dockerfile来构建容器。
什么是 Dockerfile
- Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。
1 | FROM centos:7 |
在Dockerfile同级目录里存放已经下载好的apache-tomcat-7.0.99.zip、jdk-8u131-linux-x64.tar.gz。
注意:Dockerfile 的指令每执行一次都会在 docker 上新建一层。所以过多无意义的层,会造成镜像膨胀过大。例如:
1 | FROM centos |
如上,以 && 符号连接命令,这样执行后,只会创建 1 层镜像。
开始构建镜像
在 Dockerfile 文件的存放目录下,执行构建动作。
以下示例,通过目录下的 Dockerfile 构建一个 samjavawebenv:v2(镜像名称:镜像标签)。
注:最后的 . 代表本次执行的上下文路径
1 | # docker build -t name:tag . |