1 什么是 Dockerfile?
Dockerfile 是由一系列命令和参数构成的脚本,这些命令应用于基础镜像并最终创建一个新的镜像。
2 常用命令
命令 | 作用 |
---|---|
FROM <image>:<tag> | 通过 FROM指令 指定的镜像名,必须为一个已经存在的镜像 |
MAINTAINER <name> | 指定镜像的作者信息 |
ENV key value | 设置环境变量 |
RUN <command> | 是 Dockerfile 的核心部分(可以写多条) |
ADD source_dir/file dest_dir/file | 将宿主机的文件复制到容器内,如果是一个压缩文件,将会在复制后自动解压 |
COPY source_dir/file dest_dir/file | 和ADD相似,但是如果有压缩文件,并不能解压 |
WORKDIR path_dir | 设置工作目录 |
3 使用脚本创建镜像
创建一个目录:
mkdir -p /usr/local/dockerjdk8
上传jdk到上面的文件夹
创建 Dockerfile 文件
FROM centos:7
MAINTAINER yangshuo
WORKDIR /use
RUN mkdir /usr/local/java
ADD jdk-8u171-linux-x64.tar.gz /usr/local/java/
ENV JAVA_HOME /usr/local/java/jdk1.8.0_171
ENV JRE_HOME $JAVA_HOME/jre
ENV CLASSPATH $JAVA_HOME/bin/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
ENV PATH $JAVA_HOME/bin:$PATH
构建镜像:
docker build -t='jdk1.8' .