013-Dockerfile-VOLUME

语法

VOLUME ["/data"]

作用 & 描述

VOLUME 指令创建具有指定名称的安装点,并将其标记为从本机主机或其他容器保存外部安装的卷。 该值可以是 JSON 数组,VOLUME [“/var/log/”] 或具有多个参数的纯字符串,例如 VOLUME /var/log 或 VOLUME /var/log/var/db。 有关通过 Docker 客户端提供的更多信息/示例和安装说明,请参阅通过卷共享目录文档

docker run 命令使用基本映像中指定位置存在的任何数据初始化新创建的卷。 例如,请考虑以下 Dockerfile 片段:

FROM ubuntu
RUN mkdir /myvol
RUN echo "hello world" > /myvol/greeting
VOLUME /myvol

此 Dockerfile 会生成一个镜像,该镜像会导致 docker run 在 /myvol 上创建新的挂载点,并将 greeting 文件复制到新创建的卷中。

有关指定卷的说明

关于 Dockerfile 中的卷,请记住以下事项:

  • 基于 Windows 的容器上的卷:使用基于 Windows 的容器时,容器中卷的目标必须是以下之一:
    不存在或空目录
    C 以外的驱动器:
  • 从 Dockerfile 中更改卷:如果任何构建步骤在声明后更改卷内的数据,那么这些更改将被丢弃
  • JSON 格式:列表被解析为 JSON 数组。你必须用双引号(")而不是单引号(’)括起来
  • 主机目录在容器运行时声明:主机目录(mountpoint)本质上是依赖于主机的。这是为了保持镜像的可移植性,因为不能报纸给定的主机名目录在所有主机上都可用。因此,你无法从 Dockerfile 中安装主机目录。VOLUME 指令不支持指定 host-dir 参数。你必须在创建或运行容器时指定安装点。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值