栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Docker添加与VOLUME

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Docker添加与VOLUME

两者之间的根本区别在于,

ADD
无论您要添加的内容是文件夹还是文件,它实际上 都是图像的一部分
。任何使用您之后构建的图像的人都可以访问您所拥有的任何内容
ADD
。即使后来删除它,也是如此,因为Docker在层中工作并且该
ADD
层仍将作为映像的一部分存在。需要明确的是,您只能
ADD
在构建时进行操作,而不能
ADD
在运行时进行操作。

您想使用的一些例子

ADD

  • 您有一个要引用并安装在Dockerfile中的requirements.txt文件中的一些需求。然后,您可以做:
    ADD ./requirements.txt /requirements.txt
    后面
    RUN pip install -r /requirements.txt
  • 您想将应用程序代码用作Dockerfile中的上下文,例如,如果要将应用程序目录设置为映像中的工作目录,并希望从映像中运行容器中的默认命令实际运行您的应用程序,可以做:

ADD ./ /usr/local/git/my_app

WORKDIR /usr/local/git/my_app

CMD python ./main.py

体积

另一方面,Volume只允许从映像运行的容器可以访问在其上运行容器的任何本地计算机上的某些路径。您
不能

VOLUME
在Dockerfile中使用目录中的文件。任何在你的卷目录将 不会在编译时访问的 ,但 会在运行时可以访问

您想使用的一些例子

VOLUME

  • 在容器中运行的应用程序将登录
    /var/log/my_app
    。您希望这些日志在主机上可以访问,而在删除容器时不要删除。您可以通过以下方法创建挂载点:
    /var/log/my_app
    添加
    VOLUME /var/log/my_app
    到Dockerfile,然后使用
    docker run -v /host/log/dir/my_app:/var/log/my_app some_repo/some_image:some_tag
  • 您有一些本地设置文件,希望容器中的应用可以访问。也许这些设置文件在本地计算机,开发环境和生产环境上是不同的。特别是如果这些设置文件是秘密文件,则在这种情况下,您 绝对不希望它们出现在图像中 。在这种情况下,一个好的策略是添加
    VOLUME /etc/settings/my_app_settings
    到Dockerfile中,使用来运行您的容器
    docker run -v /host/settings/dir:/etc/settings/my_app_settings some_repo/some_image:some_tag
    ,并确保/ host / settings / dir在您希望运行应用程序的所有环境中都存在。


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/394423.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号