Dockerfile是一个Docker镜像的描述文件,Docker 可以通过读取Dockerfile 中的一条一条的指令自动构建Docker 镜像。
Dockerfile 常用命令
- 运行环境:
CentOS 7.4 64位
1、FROM - 指明构建的新镜像是来自于哪个基础镜像
FROM tomcat:7.0.96
2、MAINTAINER - 指明镜像维护者及其联系方式
MAINTAINER Jack Ma <Jack Ma@hotmail.com>
3、LABEL - 指定镜像标签
LABEL version="1.0"
4、ADD - 拷贝文件或目录到镜像中
ADD admin.tar.gz usr/var/tomcat/webapps/
5、COPY - 拷贝文件或目录到镜像中
COPY admin.tar.gz usr/var/tomcat/webapps/
ADD和COPY区别:
ADD支持自动下载和解压
COPY不支持自动下载和解压
6、EXPOSE - 声明容器运行的端口
EXPOSE 8080
7、ENV - 设置环境
ENV JAVA_HOME /usr/local/jdk1.8.0_231
8、RUN - 构建镜像时执行的Shell命令
RUN yum install httpd
9、CMD - 启动容器时执行的Shell命令
CMD ["-C", "/start.sh"]
RUN和CMD区别:
RUN是构建容器时就运行的命令以及提交运行结果
CMD是容器启动时执行的命令,在构建容器时并不运行
10、ENTRYPOINT - 启动容器时执行的Shell命令
ENTRYPOINT ["/bin/bash", "-C", "/startup.sh"]
11、VOLUME - 将宿主机目录挂载到容器
VOLUME ["/usr/local/tomcat"]
12、WORKDIR - 设置工作目录
WORKDIR ["/usr/local/tomcat"]
13、ARG - 在构建镜像时,指定一些参数
docker build --build-arg user=jack Dockerfile .