Dockerfile中的copy命令
在编写Dockerfile的时候copy宿主机文件到镜像中,在执行构建的时候报错
guoliang@gldeMacBook-Pro docker_file % docker build -f Dockerfile -t jmeter01 .
[+] Building 3.3s (15/16) => [internal] load build definition from Dockerfile 0.0s=> => transferring dockerfile: 860B 0.0s=> [internal] load .dockerignore 0.0s=> => transferring context: 2B 0.0s=> [internal] load metadata for docker.io/library/java:8 3.1s=> [auth] library/java:pull token for registry-1.docker.io 0.0s=> [ 1/11] FROM docker.io/library/java:8@sha256:c1ff613e8ba25833d2e1940da0940c3824f03f802c449f3d1815a66b7f8c0e9d 0.0s=> [internal] load build context 0.1s=> => transferring context: 2B 0.1s=> CACHED [ 2/11] RUN mkdir /jmeterdocker 0.0s=> CACHED [ 3/11] RUN mkdir -p /jmeterdocker/test 0.0s=> CACHED [ 4/11] RUN mkdir -p /jmeterdocker/test/input/jmx 0.0s=> CACHED [ 5/11] RUN mkdir -p /jmeterdocker/test/input/testdata 0.0s=> CACHED [ 6/11] RUN mkdir -p /jmeterdocker/test/report/html 0.0s=> CACHED [ 7/11] RUN mkdir -p /jmeterdocker/test/report/jtl 0.0s=> CACHED [ 8/11] RUN mkdir -p /jmeterdocker/test/report/outputdata 0.0s=> CACHED [ 9/11] RUN cd /jmeterdocker 0.0s=> ERROR [10/11] COPY ../apache-jmeter-5.4.1.tgz /jmeterdocker 0.0s
------> [10/11] COPY ../apache-jmeter-5.4.1.tgz /jmeterdocker:
------
failed to compute cache key: "/apache-jmeter-5.4.1.tgz" not found: not found
看下Dockerfile
FROM java:8MAINTAINER <qihao@163.com>ENV http_proxy ""
ENV https_proxy ""RUN mkdir /jmeterdocker
RUN mkdir -p /jmeterdocker/test
RUN mkdir -p /jmeterdocker/test/input/jmx
RUN mkdir -p /jmeterdocker/test/input/testdata
RUN mkdir -p /jmeterdocker/test/report/html
RUN mkdir -p /jmeterdocker/test/report/jtl
RUN mkdir -p /jmeterdocker/test/report/outputdata
RUN cd /jmeterdockerENV JMETER_VERSION=5.4.1
ENV JMETER_HOME=/jmeterdocker/apache-jmeter-${JMETER_VERSION}
ENV JMETER_PATH=${JMETER_HOME}/bin:${PATH}
ENV PATH=${JMETER_HOME}/bin:${PATH}COPY ../apache-jmeter-5.4.1.tgz /jmeterdockerRUN cd /jmeterdocker && tar xvf apache-jmeter-5.4.1.tgz && rm apache-jmeter-5.4.1.tgz
可以看到Copy的文件使用的是相对路径(把jmetercopy到镜像的jmeterdocker文件中)
我的jmeter.tgz存放在Docker的上一级目录中。
命令执行后报错提示找不到
failed to compute cache key: "/apache-jmeter-5.4.1.tgz" not found: not found
后来又尝试使用绝对路径更改如下,使用绝对路径
FROM java:8MAINTAINER <qihao@163.com>ENV http_proxy ""
ENV https_proxy ""RUN mkdir /jmeterdocker
RUN mkdir -p /jmeterdocker/test
RUN mkdir -p /jmeterdocker/test/input/jmx
RUN mkdir -p /jmeterdocker/test/input/testdata
RUN mkdir -p /jmeterdocker/test/report/html
RUN mkdir -p /jmeterdocker/test/report/jtl
RUN mkdir -p /jmeterdocker/test/report/outputdata
RUN cd /jmeterdockerENV JMETER_VERSION=5.4.1
ENV JMETER_HOME=/jmeterdocker/apache-jmeter-${JMETER_VERSION}
ENV JMETER_PATH=${JMETER_HOME}/bin:${PATH}
ENV PATH=${JMETER_HOME}/bin:${PATH}COPY /Users/guoliang/Documents/Work/apache-jmeter-5.4.1.tgz /jmeterdockerRUN cd /jmeterdocker && tar xvf apache-jmeter-5.4.1.tgz && rm apache-jmeter-5.4.1.tgz
build之后报错内容
guoliang@gldeMacBook-Pro docker_file % docker build -f Dockerfile -t jmeter001 .
[+] Building 1.2s (14/15) => [internal] load build definition from Dockerfile 0.0s=> => transferring dockerfile: 177B 0.0s=> [internal] load .dockerignore 0.0s=> => transferring context: 2B 0.0s=> [internal] load metadata for docker.io/library/java:8 1.1s=> [ 1/11] FROM docker.io/library/java:8@sha256:c1ff613e8ba25833d2e1940da0940c3824f03f802c449f3d1815a66b7f8c0e9d 0.0s=> [internal] load build context 0.0s=> => transferring context: 2B 0.0s=> CACHED [ 2/11] RUN mkdir /jmeterdocker 0.0s=> CACHED [ 3/11] RUN mkdir -p /jmeterdocker/test 0.0s=> CACHED [ 4/11] RUN mkdir -p /jmeterdocker/test/input/jmx 0.0s=> CACHED [ 5/11] RUN mkdir -p /jmeterdocker/test/input/testdata 0.0s=> CACHED [ 6/11] RUN mkdir -p /jmeterdocker/test/report/html 0.0s=> CACHED [ 7/11] RUN mkdir -p /jmeterdocker/test/report/jtl 0.0s=> CACHED [ 8/11] RUN mkdir -p /jmeterdocker/test/report/outputdata 0.0s=> CACHED [ 9/11] RUN cd /jmeterdocker 0.0s=> ERROR [10/11] COPY /Users/guoliang/Documents/Work/apache-jmeter-5.4.1.tgz /jmeterdocker 0.0s
------> [10/11] COPY /Users/guoliang/Documents/Work/apache-jmeter-5.4.1.tgz /jmeterdocker:
------
failed to compute cache key: "/Users/guoliang/Documents/Work/apache-jmeter-5.4.1.tgz" not found: not found
后查询Docker文档,它说不能使用相对路径。
当我将jmeter.tgz文件移动到Dockerfile同目录下在进行build后Dockerfile执行成功。
Dockerfile中的copy命令相关推荐
- (转) Dockerfile 中的 COPY 与 ADD 命令
原文:https://www.cnblogs.com/sparkdev/p/9573248.html Dockerfile 中提供了两个非常相似的命令 COPY 和 ADD,本文尝试解释这两个命令的基 ...
- (转) Dockerfile 中的 COPY 与 ADD 命令 1
原文:https://www.cnblogs.com/sparkdev/p/9573248.html Dockerfile 中提供了两个非常相似的命令 COPY 和 ADD,本文尝试解释这两个命令的基 ...
- oracle命令窗口粘贴,Oracle数据库中的Copy命令
SQL*Plus的Copy命令 在数据表间复制数据是Oracle DBA经常面对的任务之一,Oracle为这一任务提供了多种解决方案,SQL*Plus Copy 命令便是其中之一.SQL*Plus C ...
- 解决:Dockerfile 中执行 tar 命令始终报错:tar: /xx/xx: Cannot stat: No such file or directory tar: Exiting with
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 1. docker 执行 build , dockerfile 中有一行命令: RUN tar -z ...
- Oracle数据库间的数据复制 - SQLPlus中的COPY命令
Copy命令可以实现不同Oracle数据库间的数据的复制,也是可以实现同一数据库的数据复制,其性能表现和导入/导出相同.原理图: 根据9i文档,说Copy命令未来会不支持,但实际上Oracle ...
- Java的IO操作(二) - 带缓冲区的流对象、写入基本数据类型、实现命令行中的copy命令...
在上一节中,我们使用FileInputStream类和FileOutputStream类来实现了一个可以自由拷贝文件的功能.为了提高效率,我们人为地定义一个缓冲区byte[] 数组.其实,我们可以使用 ...
- Docker学习总结(58)——Dockerfile中,ADD和COPY的区别?
Dockerfile中的COPY指令和ADD指令都可以将主机上的资源复制或加入到容器镜像中,都是在构建镜像的过程中完成的.COPY指令和ADD指令的唯一区别在于是否支持从远程URL获取资源.COPY指 ...
- 【Docker】Dockerfile构建镜像与命令详解
前言 传统方式部署集群,你需要在每台机器搭建环境,配置各种中间件,这样不但效率低下,而且很难保证环境的一致性,而且配置如果有改动,需要挨个机器修改. 有了Docker,上述问题都能解决.但是官方镜像大 ...
- Dockerfile 中的 CMD 和 ENTRYPOINT 有什么区别
推荐阅读 Helm3(K8S 资源对象管理工具)视频教程:https://edu.csdn.net/course/detail/32506 Helm3(K8S 资源对象管理工具)博客专栏:https: ...
最新文章
- Glibc辅助运行库 (C RunTime Library): crt0.o,crt1.o,crti.o crtn.o,crtbegin.o crtend.o
- PNAS | 理解单个神经元在深度神经网络中的作用
- C++ STL 算法精选之查找篇
- python sqlserver 列名_报表自动化,三流用Excel,二流用Python,一流用它
- 使用SpringBoot+JPA报错Incorrect syntax near 'hibernate_sequence'
- 【深度语义匹配模型】实践篇:语义匹配在贝壳找房智能客服中的应用
- 「2019冬令营提高组」送分题
- 【谷粒学院】项目总结
- Java 全栈工程师进阶路线图
- 仿QQ项目(一):好友列表
- 难说 | 新读了几本书
- 跑通Jetson Nano TensorRt sampleSSD例程
- 没有打不了的补丁切不了的面
- Ubuntu安装QQ、VM、Chrom软件
- 计算机word做课程表实验报告,《用word做课程表》教学设计
- 关于Python的虚拟环境
- Centos7英文操作环境下的中文输入
- 网络安全:大数据问题
- 一到面试就紧张,该怎么办?
- sp_depends
热门文章
- 计算机编程图林先生,【电脑维修】台中林先生:我的电脑平均1週画面
- 基于Java毕业设计病人跟踪治疗信息管理系统演示2021源码+系统+mysql+lw文档+部署软件
- [原创]VMProject 3.x 3.5: 2021年绕过anti-debugging的最新配置, 解决“a debugger has been found“的问题.
- linux信号之sigsuspend和setitimer
- 使用SurfaceView+Camera模仿照相机拍照功能
- 微博和知乎中的 feed 流是如何实现的
- QGIS编译SIP的问题
- oracle linux unbreakable linux 6.1迅雷离线高速下载
- 你招聘设计师时都问哪些问题?你是怎么招聘设计师大牛的?
- 【SpringMVC】自定义拦截器和过滤器