Dockerfile中ARG和ADD指令

1. **ARG**:
ARG ECM_FONTS_DIR=/usr/share/fonts/ECM_FONTS
ARG` 指令用于定义构建时变量。这意味着你可以在构建Docker镜像时传递一个值给这个变量。如果该值没有在构建时传递,它将采用定义时的默认值。

在上述代码中,我们定义了一个名为 `ECM_FONTS_DIR` 的变量,并为其设置了默认值 `/usr/share/fonts/ECM_FONTS`。

2. **ADD**:
ADD ECM_FONTS $ECM_FONTS_DIR
ADD` 指令用于将本地文件、目录或远程文件URL添加到镜像中。与 `COPY` 指令不同,`ADD` 还可以自动解压tar文件,并支持从URL获取文件。

在这个例子中,`ADD` 指令将 `ECM_FONTS`(这很可能是一个在构建上下文中的文件或目录)添加到之前通过 `ARG` 定义的 `ECM_FONTS_DIR` 目录中。

**举例说明**:

假设你有以下的目录结构:

/path/to/docker/build
|-- Dockerfile
|-- fonts
    |-- ECM_FONTS.ttf
其中,`fonts` 目录包含一个名为 `ECM_FONTS.ttf` 的字体文件。

你可以使用以下Dockerfile来构建镜像:

ARG ECM_FONTS_DIR=/usr/share/fonts/ECM_FONTS

# 创建一个目录,如果它不存在的话
RUN mkdir -p $ECM_FONTS_DIR

# 将本地的ECM_FONTS.ttf文件添加到镜像的指定目录
ADD fonts/ECM_FONTS.ttf $ECM_FONTS_DIR
当你构建这个镜像时,`ECM_FONTS.ttf` 文件将被添加到镜像的 `/usr/share/fonts/ECM_FONTS` 目录中。

你可以使用以下命令来构建这个镜像:

docker build -t my-custom-font-image /path/to/docker/build
在后续的镜像运行实例中,你可以从这个目录中访问 `ECM_FONTS.ttf` 文件。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值