Dockerfile常用指令

Dockerfile是用来制作镜像的源文件,包含了构建和设置指令,如FROM、MAINTAINER(现由LABEL取代)、COPY、ADD、ENV、EXPOSE、VOLUME、WORKDIR、RUN、CMD、ENTRYPOINT等。它定义了镜像的构建过程和属性,用于构建Docker镜像,而Docker镜像和Docker容器分别代表软件的不同阶段。在容器运行时,设置指令会影响容器的行为。
摘要由CSDN通过智能技术生成

目录

Dockerfile是什么

dockerfile的的工作逻辑

 Dockerfile、Docker镜像、Docker容器

 Dockerfile 常用指令

FROM  (构建指令)

MAINTAINER  (构建指令)

COPY  (构建指令)

ADD  (构建指令)

ENV  (构建指令)

EXPOSE  (设置指令)

VOLUME  (设置指令)

WORKDIR  (设置指令)

RUN  (构建指令)

CMD  (设置指令)

ENTRYPOINT  (设置指令)

USER

HEALTHCHECK

 ARG 构建参数

 LABEL


Dockerfile是什么

dockerfile仅仅是用来制作镜像的源码文件,是构建容器过程中的指令,docker能够读取dockerfile的指定进行自动构建容器,基于dockerfile制作镜像,每一个指令都会创建一个镜像层,即镜像都是多层叠加而成,

Dockerfile的指令根据作用可以分为两种:构建指令和设置指令。

(1)构建指令用于构建image,其指定的操作不会运行在image的容器中执行。

(2)设置指令用于设置image的属性,其指定的操作将在运行image的容器中执行。

dockerfile的的工作逻辑

首先需要有一个制作镜像的目录,该目录下有个文件,名称必须为Dockerfile,Dockerfile有指定的格式,#号开头为注释,,指定默认用大写字母来表示,以区分指令和参数,docker build读取Dockerfile是按顺序依次Dockerfile里的配置,且第一条非注释指令必须是FROM 开头,表示基于哪个基础镜像来构建新镜像。可以根据已存在的任意镜像来制作新镜像。

 从应用软件的角度来看,Dockerfile、Docker镜像与Docker容器分别代表软件的三个不同阶段:

  • Dockerfile软件的原材料
  • Docker镜像是软件的交付品
  • Docker容器则可以认为是软件镜像的运行形态,即依照镜像运行的容器实例

 Dockerfile、Docker镜像、Docker容器

  1. Dockerfile,需要定义一个Dockerfile,Dockerfile定义了进程需要的一切东西。Dockerfile涉及的内容包括执行代码或者是文件、环境变量、依赖包、运行时环境、动态链接库、操作系统的发行版、服务进程和内核进程(当应用进程需要和系统服务和内核进程打交道,这时需要考虑如何设计namespace的权限控制)等等;
  2. Docker镜像,在用Dockerfile定义一个文件之后,docker build时会产生一个Docker镜像,当运行 Docker镜像时会真正开始提供服务;
  3. Docker容器,容器是直接提供服务的。

 Dockerfile 常用指令

  • FROM  (构建指令)

       指定 base 镜像,必须指定且需要在Dockerfile其他指令的前面。后续的指令都依赖于该指令指定的镜像。FROM指令指定的base镜像可以是官方远程仓库中的,也可以位于本地仓库。

该指令有两种格式:

FROM <image>

指定基础image为该image的最后修改的版本(latest)。

或者:

FROM <image>:<tag>

指定基础image为该image的一个tag版本。

  • MAINTAINER  (构建指令)

格式:MAINTAINER <name>

设置镜像的作者,可以是任意字符串。用于将image的制作者相关的信息写入到image中。当我们对该image执行

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值