docker copy vs add

在Dockerfile中, 我们可以使用ADD和COPY拷贝文件(注意是上下文相关目录的文件, 不是本地的任意文件, 除非上下文目录是根)到container制作image.

那么两者有什么区别呢?

ADD 多了2个功能, 下载URL和解压.  其他都一样.

如果你不希望压缩文件拷贝到container后会被解压的话, 那么使用COPY.

如果需要自动下载URL并拷贝到container的话, 请使用ADD.

注意文件和目录的路径区别(有无  ”/“)

时间: 2024-11-04 11:18:11

docker copy vs add的相关文章

Dockerfile中的COPY和ADD指令详解与比较

Dockerfile中的COPY指令和ADD指令都可以将主机上的资源复制或加入到容器镜像中,都是在构建镜像的过程中完成的. COPY指令和ADD指令的唯一区别在于是否支持从远程URL获取资源.COPY指令只能从执行docker build所在的主机上读取资源并复制到镜像中.而ADD指令还支持通过URL从远程服务器读取资源并复制到镜像中. 满足同等功能的情况下,推荐使用COPY指令.ADD指令更擅长读取本地tar文件并解压缩. 1. COPY指令 COPY指令能够将构建命令所在的主机本地的文件或目

Docker commands和Dockerfile

Docker commands和Dockerfile 标签 : docker Docker commands和Dockerfile Docker commands Dockerfile 本文主要对Docker commands和Dockerfile的相关知识进行整理 Docker commands 官网传送门: Docker run reference Docker commands 首先,当然是配置命令自动补全,只需要把一个文件用curl下载copy到特定路径即可,具体操作参考Command-

docker入门篇

基础知识不回顾了,直接上. docker的安装与启动 yum remove docker -y yum install docker-io -y # 需要先配置好epel源 /etc/init.d/docker start chkconfig docker on 获取镜像 docker pull centos       # 从docker仓库下载一个镜像例如:docker pull centos:6.7 docker images            #列出本地已存在的镜像 docker i

docker讲解和命令汇总

docker 什么是docker? Docker是Docker.inc公司开源的一个基于LXC技术之上构建的Container容器引擎,源代码托管在GitHub上,基于Go语言并遵从Apache2.0协议开源(可以商业). Docker项目的目标是实现轻量级的操作系统虚拟化解决方案. Docker是通过内核虚拟化技术(namespaces及cgroups等)来提供容器的资源隔离与安全保障等.由于Docker通过操作系统层的虚拟化实现隔离,所以Docker容器在运行时,不需要类似虚拟机VM额外的操

docker基础操作

Docker desktop23.example.com 172.25.254.23 Selinx iptables disabled    rhel7.2版本 1.安装 yum install -y docker-engine-1.10.3-1.el7.centos.x86_64.rpm docker-engine-selinux-1.10.3-1.el7.centos.noarch.rpm systemctl start docker 2.简单命令 docker version# 查看版本信

Docker镜像与仓库(二)Dockerfile

Docker镜像文件与仓库(二) Docker镜像文件与仓库(二) Dockerfile指令 Dockerfile格式: 1.#Comment注释2.INSTRUCTION大写的指令名 argument参数 FROM 1.FROM <image>2.FROM <image>:<tag>3.#通过FROM指定的镜像名都必须是已经存在的镜像,这个镜像叫做基础镜像,而且必须是第一条非注释指令 MAINTAINER 1.MAINTAINER <name>2.#指定镜

深刻理解Docker镜像大小

都说容器大法好,可是假设没有Docker镜像,Docker该是多无趣啊. 是否还记得第一个接触Docker的时候,你从Docker Hub下拉的那个镜像呢?在那个处女镜像的基础上.你执行了容器生涯的处女容器.镜像的基石作用已经非常明显.在Docker的世界里,能够说是:No Image,No Container. 再进一步思考Docker镜像,大家可能非常快就会联想到下面几类镜像: 1.系统级镜像:如Ubuntu镜像.CentOS镜像以及Debian容器等: 2.工具栈镜像:如Golang镜像.

Dockerfile创建自定义Docker镜像以及CMD与ENTRYPOINT指令的比较

1.概述 创建Docker镜像的方式有三种 docker commit命令:由容器生成镜像: Dockerfile文件+docker build命令: 从本地文件系统导入:OpenVZ的模板. 关于这三种方式的大致说明请参考yeasy/docker_practice的创建镜像. 最近学习了Dockerfile文件的相关配置,这里做一下简单的总结,并对之前一直感到有些迷惑的CMD和ENTRYPOINT指令做个差异对比. 2.Dockerfile文件总结 Dockerfile 由一行行命令语句组成,

Docker 使用指南 (五)—— Dockerfile 详解

版权声明:本文由田飞雨原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/97 来源:腾云阁 https://www.qcloud.com/community 制作Docker image 有两种方式:一是使用 Docker container,直接构建容器,再导出成 image 使用:二是使用 Dockerfile,将所有动作卸载文件中,再 build 成 image.Dockerfile 的方式非常灵活,推荐使用. 本次