Dockerfile的结构大致分为四部分:基础镜像信息、维护者信息、镜像操作指令和容器时的执行指令。Docker每行一条指令,每条指令可携带多个参数,支持使用“#”号开头的注释。

        在编写Dokcerfile时,有严格的格式需要遵循:第一行必须使用FROM指令指明所基于的镜像名称,之后使用MAINTAINER 指令说明维护该镜像的用户信息,然后是镜像操作的相关指令,如RUN指令。每运行一条指令,都会给基础镜像添加新的一层。

Dockerfile语法
指令含义
FROM 镜像指定新镜像基于的镜像,第一条指令必须为FROM指令。每创建一个镜像就需要一条FROM指令。
MAINTAINER 名字说明新镜像的维护人信息。
RUN 命令在所基于的镜像上执行命令,并提交到新的镜像中。
CMD [“要运行的程序”,“参数 1”,“参数 2”]启动容器时要运行的命令或脚本。Docker 只能有一条CMD命令。如果指令多条CMD命令,也只执行最后一条。
EXPOSE 端口号指定新镜像加载到Docker时要开启的端口。
ENV 环境变量 变量值设置一个环境变量的值,会被后面的RUN用到。
ADD 源文件/目录 目标文件/目录将源文件复制到目标文件。源文件要与Dockerfile位于相同目录中,或者同一个URL。
COPY 源文件/目录 目标文件/目录将本地主机上的文件/目录复制到目标地点。源文件/目录要与Docker在相同的目录中
VOLUME ["目录"]在容器中创建一个挂载点。
USER 用户名/UID指定运行容器时的用户。
WORKDIR 路径为后续的RUN、CMD、ENTPYOINT指定工作目录
ONBUILD 命令指定所生成的镜像作为一个基础镜像时要运行的命令。

                        HEALTHCHECK

健康检查

 

Logo

鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。

更多推荐