阅读量:3
Dockerfile 是一个文本文件,其中包含了一系列用于构建 Docker 镜像的指令和参数。以下是 Dockerfile 的基本语法和常用指令:
基本语法
- 指令:每条指令必须是大写字母开头,后面跟随零个或多个参数。
- 参数:参数通常是以空格分隔的值。
- 多行指令:如果一行指令太长,可以使用反斜杠
\进行换行。 - 注释:使用
#开头的行会被 Docker 忽略,用于添加注释。
常用指令
-
FROM:指定基础镜像。
FROM ubuntu:20.04 -
RUN:执行命令。
RUN apt-get update && apt-get install -y nginx -
COPY:将文件或目录从构建上下文复制到镜像中。
COPY . /app -
ADD:类似于 COPY,但可以自动解压 tar 文件,并支持 URL。
ADD https://example.com/file.tar.gz /app -
CMD:指定容器启动时执行的命令。
CMD ["nginx", "-g", "daemon off;"] -
ENTRYPOINT:指定容器启动时的入口点。
ENTRYPOINT ["nginx"] -
EXPOSE:声明容器运行时监听的端口。
EXPOSE 80 -
ENV:设置环境变量。
ENV MY_VAR=value -
VOLUME:创建一个挂载点。
VOLUME ["/data"] -
USER:指定运行容器时的用户。
USER nobody -
WORKDIR:设置工作目录。
WORKDIR /app -
ARG:定义构建时变量。
ARG VERSION=latest
示例 Dockerfile
# 使用 Ubuntu 20.04 作为基础镜像
FROM ubuntu:20.04
# 设置环境变量
ENV MY_VAR=value
# 更新包列表并安装 Nginx
RUN apt-get update && apt-get install -y nginx
# 将当前目录下的所有文件复制到容器的 /app 目录
COPY . /app
# 设置工作目录
WORKDIR /app
# 暴露端口 80
EXPOSE 80
# 启动 Nginx
CMD ["nginx", "-g", "daemon off;"]
通过这些基本指令,你可以创建一个自定义的 Docker 镜像,并根据需要进行扩展和修改。
以上就是关于“Dockerfile语法基础是什么”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm