Tag: caching

Docker使用什么校验和来cachingCOPY?

我想debugging一个Dockercaching问题,我想检查caching是否应该匹配。 Step 7 : COPY myfile /home/me/myfile —> daa0799b47df 上面的ID代表什么? 它似乎不是md5或sha1校验和的一部分。 我可以运行一个命令来检查这个吗?

如何防止Dockerfile指令被caching?

在我的Dockerfile我使用curl或ADD来下载最新版本的档案,例如: FROM debian:jessie … RUN apt-get install -y curl … RUN curl -sL http://example.com/latest/archive.tar.gz –output archive.tar.gz … ADD http://example.com/latest/archive2.tar.gz … 使用curl或ADD的RUN语句创build它自己的图像层。 这将被用作未来执行docker build的caching。 问题 :如何禁用该指令的caching? 在那里得到像caching失效那样的东西,真是太好了。 例如通过使用HTTP ETags或通过查询最后修改的标题字段。 这将有可能基于HTTP标头进行快速检查,以确定是否可以使用caching图层。 我知道一些肮脏的技巧可以帮助例如在RUN语句中执行下载shell脚本。 它的文件名将在docker build被我们的构build系统触发之前被更改。 我可以在该脚本中执行HTTP检查。 但是,然后我需要存储最后使用的ETag或最后修改到某个地方的文件。 我想知道是否有一些更干净和本机的 Dockerfunction,我可以使用,在这里。

Travis CIcaching泊坞窗图像?

是否有可能添加一个设置caching我的docker图像在任何地方的Travisconfiguration? 矿是一个更大的docker形象,它需要一段时间下载。 有什么build议么 ? -Naga

如何通过使用caching快速重builddockerfile?

我想优化我的Dockerfile。 我希望将caching文件保存在磁盘中。 但是,我发现当我运行docker build . 它总是试图从networking上获取每个文件。 我希望在构build期间共享我的caching目录(例如/ var / cache / yum / x86_64 / 6)。 但是,它只适用于docker run -v … 任何build议?(在这个例子中,只有1转安装,在实际情况下,我需要安装数百rpms) 我的草稿Dockerfile FROM centos:6.4 RUN yum update -y RUN yum install -y openssh-server RUN sed -i -e 's:keepcache=0:keepcache=1:' /etc/yum.conf VOLUME ["/var/cache/yum/x86_64/6"] EXPOSE 22 第二次,我想要build立一个类似的图像 FROM centos:6.4 RUN yum update -y RUN yum install -y openssh-server […]

如何设置docker使用每个构build步骤的registry中的caching

我有两台服务器与docker和一个服务器与我的私人registry。 我在第一台机器上build立了Dockerfile; 然后我把图像推送到registry。 是否有可能立即在我的registry中使用caching在第二台机器上构buildDockerfile? 如果没有,有没有办法加快构build“几乎”相同的Docker文件,而不写我自己的caching? 它试图设置–registry-mirror但没有帮助。

Docker如何知道在构build过程中何时使用caching?

我很惊讶Docker的图层caching效果如何,但是我也想知道它是如何确定它是否可以使用caching图层。 让我们以这些构build步骤为例: Step 4 : RUN npm install -g node-gyp —> Using cache —> 3fc59f47f6aa Step 5 : WORKDIR /src —> Using cache —> 5c6956ba5856 Step 6 : COPY package.json . —> d82099966d6a Removing intermediate container eb7ecb8d3ec7 Step 7 : RUN npm install —> Running in b960cf0fdd0a 例如,它如何知道它可以使用npm install -g node-gyp的caching层,但为npm install创build一个新层?

在特拉维斯CIcaching泊坞窗图像

是否有可能在特拉维斯CIcaching泊坞窗图像? 尝试caching/var/lib/docker/aufs/diff文件夹和/var/lib/docker/repositories-aufs docker /var/lib/docker/repositories-aufs文件与travis.yml中的cache.directories似乎不工作,因为它们需要root。

在下载资源时,有什么策略可以使Dockerfile指令caching无效

我们的一些Docker映像需要从Nexus服务器或互联网上下载更大的二进制文件,因为互联网负责分发Java,Node.js,Mobile(Android和iOS)应用程序。 例如,使用ADD或者RUN指令来下载。 RUN curl -o docker https://get.docker.com/builds/Linux/x86_64/docker-latest 考虑到“docker build”命令将根据文件的mtime来查看指令和caching,在构build这些映像时利用caching机制的方法是什么,避免重新下载整个二进制文件? https://stackoverflow.com/a/26612694/433814 。 另一个问题是如果资源发生变化,Docker将不会下载最新版本。

从Docker Elastic Beanstalk容器中获取Elasticache地址

我正在尝试有弹性beanstalk自动提供一个elasticache实例。 我想弄清楚如何我可以在我的docker环境中在运行时访问caching实例的地址。 我正在运行python(在gevent上)。 这是我的.ebextensions中的configuration文件: Resources: sslSecurityGroupIngress: Type: AWS::EC2::SecurityGroupIngress Properties: GroupName: {Ref : AWSEBSecurityGroup} IpProtocol: tcp ToPort: 443 FromPort: 443 CidrIp: 0.0.0.0/0 MyCacheSecurityGroup: Type: "AWS::EC2::SecurityGroup" Properties: GroupDescription: "Lock cache down to webserver access only" SecurityGroupIngress : – IpProtocol : "tcp" FromPort : Fn::GetOptionSetting: OptionName : "CachePort" DefaultValue: "6379" ToPort : Fn::GetOptionSetting: OptionName : "CachePort" DefaultValue: "6379" […]

AWS泊坞窗设置 – 无caching标志

我在AWS上使用EB来部署dockerfile。 目前我部署到脚本: dockerfile和启动服务器的run.sh文件。 dockerfile大致看起来像这样 FROM ubuntu:14.04 MAINTAINER xy […install a java server…] ADD run.sh /run.sh RUN chmod +x /*.sh EXPOSE 8080 CMD ["/run.sh"] run.sh启动java服务器。 我想为–no-cache设置–no-cache标志。 我可以在哪里设置?