如何在Docker Container中运行一些脚本?

时间:2016-12-16 07:09:19

标签: git docker dockerfile

我有很少的git repos是构建应用程序所必需的。我编写了一个Dockerfile来克隆repo,checkout到开发分支并运行命令来构建应用程序。我能够使用此dockerfile正确构建docker镜像。但现在我想使用一些shell脚本" update.sh"因为我在dockerfile中有多个git repos来更新,所以应该更新代码并在更新的代码上进行构建。我试图在Dockerfile中保持相同,但它不是每次都更新,第一次更新,以及从下次从缓存中获取该图像。

基础设施详情: 我有8个git回购如下:

A-->B-->C-->D and so on

我制作了一个克隆版本的脚本更新其他存储库并保存在A. 问题是当我运行脚本时,它第一次运行时,但从下次它从缓存中获取内容。

有人可以帮助我完成任务。

2 个答案:

答案 0 :(得分:0)

你可以用以下代码构建Dockerfile:

docker build --no-cache

避免缓存问题。

答案 1 :(得分:0)

我用Google搜索并找到解决方案here。它对我有用。

FROM foo
ARG CACHE_DATE=2016-01-01
RUN git clone ...
docker build --build-arg CACHE_DATE=$(date) ....