热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

DockerCOPY命令可以链接吗

如何解决《DockerCOPY命令可以链接吗》经验,为你挑选了1个好方法。

是否可以像使用RUN命令那样将COPY命令链接在一起?

链接运行命令示例:

RUN echo "root:user_2017" | chpasswd && \
    groupadd -g 1000 user && \
    useradd -u 1000 -m -s /bin/bash user && \
    passwd -d user

如果必须执行从主机到映像的许多副本,是否可以像下面显示的那样阻止引入多个中间映像?我知道下面显示的内容行不通,因为当&&使用来将多行绑定在一起时,每一行都需要是一个单独的命令。

COPY ./folder1A/* /home/user/folder1B/ && \
     ./folder2A/* /home/user/folder2B/ && \
     ./folder3A/* /home/user/folder3B/ && \
     ./folder4A/* /home/user/folder4B/ && \

BMitch.. 6

由于COPY命令不能被链接,因此通常最好以易于复制到映像中的方式来构造上下文(要复制的目录)。

所以代替:

COPY ./folder1A/* /home/user/folder1B/ && \
     ./folder2A/* /home/user/folder2B/ && \
     ./folder3A/* /home/user/folder3B/ && \
     ./folder4A/* /home/user/folder4B/ && \

将这些文件夹放入公共目录并运行:

COPY user/ /home/user/

如果要复制文件,则可以将多个文件复制到一个目标中:

COPY file1.zip file2.txt file3.cfg /target/app/

如果尝试使用目录执行此操作,则会发现docker将其展平一个级别,因此建议将目录重新组织到一个公共的父文件夹中。



1> BMitch..:

由于COPY命令不能被链接,因此通常最好以易于复制到映像中的方式来构造上下文(要复制的目录)。

所以代替:

COPY ./folder1A/* /home/user/folder1B/ && \
     ./folder2A/* /home/user/folder2B/ && \
     ./folder3A/* /home/user/folder3B/ && \
     ./folder4A/* /home/user/folder4B/ && \

将这些文件夹放入公共目录并运行:

COPY user/ /home/user/

如果要复制文件,则可以将多个文件复制到一个目标中:

COPY file1.zip file2.txt file3.cfg /target/app/

如果尝试使用目录执行此操作,则会发现docker将其展平一个级别,因此建议将目录重新组织到一个公共的父文件夹中。


推荐阅读
author-avatar
手机用户2502875747
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有