Caching AWS docker集--无缓存标志

Caching AWS docker集--无缓存标志,caching,amazon-web-services,docker,amazon-elastic-beanstalk,Caching,Amazon Web Services,Docker,Amazon Elastic Beanstalk,我正在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服务器 我想为docker设置--no cache标志。我

我正在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服务器


我想为docker设置
--no cache
标志。我在哪里可以设置呢?

您使用的是--只有在docker构建步骤中才没有缓存。如果运行脚本没有构建映像,那么您需要找到构建映像的内容,并告诉该进程不要使用缓存

您不能指定
docker build
--无缓存,因为eb不允许您这样做

解决方法是在本地构建映像(使用
--无缓存
)。然后使用
docker push
将图像发布到docker hub公共注册表

您的Dockerfile可以简化(未经测试)为:


听起来确实像是在创建一个大映像,您可以通过将整个安装序列转换为一个运行语句来缓解这一问题。不要忘记删除所有临时文件。

run.sh是运行docker命令build和run的地方吗?如果您可以发布Dockerfile并运行.sh,可能会有所帮助。@booyaa No run.sh只启动a服务器。我对我的问题做了一点修改。我怎样才能知道是什么在构建它呢?我只将这两个脚本部署到AWS EB。
FROM custom_java_server_build:latest
MAINTAINER xy

EXPOSE 8080

CMD ["/run.sh"]