2017-04-14 94 views
0

很常見的用例與碼頭工人,撰寫:泊塢窗,撰寫,新容器版本和日誌持久

  • 一個應用程序的代碼使用Git從倉庫拉。
  • 泊塢窗,compose.yml看起來像這樣:

version: '2' services: web: build: ./myapp

當我要部署一個新的版本,我只是拉我的代碼的最新版本,然後做出docker-compose up --build -d

除了每次進行更新時,它幾乎都可以完美地工作,它將使用docker-compose logs擦除我可以訪問的過去日誌。我明白爲什麼碼頭工人會這麼做(即使docker-compose重新創建了一個具有相同名稱的容器,它仍然是一個全新的容器,所以它的邏輯日誌被刷新)。但是,這實際上並不實際。

任何人都有解決方案嗎?優選地,不是涉及修改圖像或使用捲來存儲日誌。 (因爲這應該是碼頭日誌的重點,不必擔心這一點)。

回答

0

啓動容器時,您可以將輸出重定向到一個日誌文件,是這樣的:

docker-compose up --build --no-color --force-recreate &> logs & 

相反的docker-compose logs,你可以隨時tail logs你想。

0

我認爲最好的方法是使用對碼頭工人的文檔中描述的日誌驅動程序選項之一: https://docs.docker.com/engine/admin/logging/overview/

如果這不是一個可行的解決方案,你可以給我你的目標一點點更多的上下文和障礙?