2017-10-20 60 views
1

我在一臺服務器上構建docker鏡像,然後將其加載到節點上(使用docker save和docker load cmds)。即使配置沒有改變,如何重新啓動豆莢

然後,我對dep_config文件進行了更改,以將其在本地而不是回購(通過設置imagepullpolicy)。

之後,我做了「kubectl apply -f dep_config.yml」。

現在,pod僅在第一次重新啓動,但隨後會加載映像並應用配置文件,pod不會重新啓動。

即使config_deploy.yml文件中沒有更改,是否有辦法使用「kubectl apply」重新啓動該窗格。

回答

1

通常的做法是使用patch命令

kubectl patch deployment your-deployment -p \ 
"{\"spec\":{\"template\":{\"metadata\":{\"labels\":{\"date\":\"$(date +%s)\"}}}}}" 

基本上你可以改變什麼,在這個例子中的莢模板,甚至裏面的東西,像改變部署的未使用的標籤,沒有一個注意到。

+0

這絕對是目前可用的最佳解決方法,儘管使用'labels'時要記住一件小事,按照k8s文檔,「標籤可用於選擇對象並查找滿足某些條件的對象的集合。相反,註釋不用於識別和選擇對象。「所以'標籤'可能導致意想不到的選擇結果,而'註釋'是完全安全的。 – easiestripes