我正在部署一個nginx實例。 dockerfile以及nginx配置數據和Web應用程序都在我的git存儲庫中。對我來說,這似乎是有道理的,這是一個git倉庫:應用程序以及如何部署它。在Dockerfile我想說的(這是簡化了一點,但問題是,我不能)將git存儲庫添加到docker鏡像(工作流最佳實踐)
COPY web-app /serving
COPY docker/site-conf /etc/nginx/sites-enabled/
在那裏我有這樣的目錄結構:
my-git-root
web-app
...
docker
Dockerfile
build.sh
site-conf
的問題,至少在部分,碼頭的上下文是my-git-root/docker /。
本着不可變服務的精神,我希望容器擁有git存儲庫的快照,而不是容器中的apt-get install'ing git並將數據拉出。但是我沒有看到如何做這個工作,除非我把Docker的東西分離出來放到一個單獨的git倉庫中,然後在每一個版本上克隆web應用程序 - 我寧願不讓任何人試圖在生活中勉強接受容器。
關於更理智的工作流程的建議?
是「將dockerfile移動到git repo的根目錄」; 「將web應用程序安裝爲音量」爲-1。這不是「不變的服務精神」。 – Bryan 2014-12-05 17:40:40