返回顶部

了解Dockerfile,是什么?主要指令?如何使用?

Dockerfile是什么?

Dockerfile 是一个文本文件,其中包含了一系列指令,用来自动化构建 Docker 镜像。它的主要作用就是定义一个 Docker 镜像的构建过程,包括镜像的基础镜像、安装的软件、设置的环境变量、暴露的端口、执行的命令等。

主要指令有哪些?

1、FROM:指定基础镜像。

FROM ubuntu:20.04,表示使用 ubuntu 20.04 作为基础镜像。

2、RUN:在镜像构建过程中执行命令(通常用于安装软件)。

RUN apt-get update && apt-get install -y curl,表示在镜像中安装 curl 软件。

3、COPY / ADD:将文件从本地复制到镜像中。

COPY ./myapp /app,表示将当前目录下的 myapp 文件夹复制到镜像中的 /app 目录。

4、WORKDIR:设置工作目录,后续的命令都会在该目录下执行。

WORKDIR /app,设置工作目录为 /app。

5、EXPOSE:暴露容器的端口,供外部访问。

EXPOSE 8080,表示容器会监听 8080 端口。

6、CMD / ENTRYPOINTCMD / ENTRYPOINT:指定容器启动时执行的命令。

是容器启动时的默认命令,但可以被 docker run 覆盖;ENTRYPOINT 是容器启动时的强制命令。

CMD ["python", "app.py"],表示容器启动时会执行 python app.py。

如何使用?

复制docker build -t ImgName .
  • -t ImgName -t 是 tag 的缩写,用来为新构建的镜像命名和打标签。在这里,ImgName 就是你要给这个镜像命名的名称。

  • . 这个点(.)表示当前目录。Docker 将从这个目录下的 Dockerfile 文件开始构建镜像。

posted @   十方央丶  阅读(30)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示