Docker Dockerfile简介

Dockerfile是Docker中的一种自动化构建文件,它的作用是用于定制镜像。Docker可以通过 Dockerfile 自动构建镜像。Dockerfile支持的指令有FROM、RUN、COPY、ADD、WORKDIR、CMD等。常用的Dockerfile指令有:

1. FROM:基础镜像,当前新镜像是基于哪个镜像的。

2. RUN:构建时需要运行的命令,会在新镜像之上构建的临时镜像上运行。

3. CMD:构建容器后运行的命令,只运行一次。CMD会被docker run命令行参数替换。

4. ENTRYPOINT:构建容器后运行的命令,给docker run追加参数。

5. COPY/ADD:将文件/目录复制到镜像,COPY不会自动解压文件,ADD会自动解压tar文件。

6. WORKDIR:指定工作目录,类似cd命令。

7. ENV:设置环境变量,会被后续指令使用。

8. EXPOSE:指定容器暴露的端口。

9. VOLUME:数据卷挂载点。

10. ARG:构建参数,会在构建过程中使用。一个基本的Dockerfile示例如下:

Dockerfile
FROM ubuntu:18.04
WORKDIR /app
COPY . .
RUN make /app
CMD python /app/app.py
EXPOSE 5000

这个Dockerfile:

1. 基于ubuntu:18.04镜像

2. 工作目录设置为/app

3. 将当前目录复制到/app

4. 运行make /app命令构建应用

5. 运行容器后执行app.py文件

6. 暴露5000端口通过Dockerfile我们可以快速定制需要的镜像,减少手动配置镜像的工作,并使镜像构建具有可重现性。

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享
评论 抢沙发

请登录后发表评论