[英]Rebuild a docker image depending on the output of a command
假設在某個存儲庫中有新的編譯器版本可用時,我想重建我的Docker映像。
我可以在容器內收集版本:
FROM centos:7
RUN yum info gcc | grep Version | sort | tail -1 | cut -d: -f2 | tr -d ' '
如果構建此容器並將其標記為base
,則可以使用該信息並設置第二個容器:
FROM base
RUN yum install gcc-4.8.5
當編譯器版本未更改時,Docker將能夠緩存第二個容器而不重建它。 但是,創建該腳本需要一些shell腳本,並且在例如持續集成的情況下可能會很脆弱。
我想為這兩個容器引入一個統一的資源。 有沒有辦法寫這樣的東西:
FROM centos:7
$GCC_VERSION=RUN yum info gcc | grep Version | sort | tail -1 | cut -d: -f2 | tr -d ' '
RUN yum install gcc-$GCC_VERSION
並在docker build
期間擴展了變量(並且仍然緩存了命令)?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.