2016-07-18 82 views
-1

我已經構建了6個月的nginx docker容器。 Nginx的在泊塢窗容器顯示:如何在Docker容器中升級nginx版本

nginx version: nginx/1.9.5 

而且搬運工圖片顯示:

xxx/nginx80lb_release latest    2228a5d98be7  8 months ago  132.9 MB 

而且dockerfile我已經建立了碼頭工人的圖像前:

FROM nginx:latest 

現在,我想升級到最新nginx 1.11.2(最新)。 我已經在谷歌搜索,但沒有運氣。我不想重建Docker鏡像。

我該怎麼做?請給我一些建議。

謝謝!

+1

不知道爲什麼你不想重建圖像。另一種方法是進入容器,升級nginx並執行docker commit。 – atv

+0

docker hub上的最新版本是1.11.1,爲什麼不使用它?運行docker pull nginx:最新的,你應該沒問題。 – opHASnoNAME

+0

如果我重建docker鏡像,我必須配置SSL證書,負載平衡器和重要的事情,我不備份nginx文件。 –

回答

1

容器基於不可變的圖像。

您不應該升級容器,因爲您無法一直重新創建您的env,這就是整個問題。

如果你在圖像中捆綁了你的祕密......你是如何輪換他們/管理的,那只是非常糟糕的做法。

並且:您可以docker cp <container> file - 複製證書。

2

你在這裏使用的容器和圖像非常鬆散。

如果要升級容器運行docker exec -it <container_name> sh以進入容器並在容器shell中運行所需的任何命令。

如果要升級圖像,可以基於它運行容器,進行與上面相同的更改,然後執行docker commit