2017-10-10 46 views
1

我想在我的AWS EC2集羣上部署節點紅色服務器。我得到了碼頭形象並且沒有問題地運行。節點紅將用戶流存儲在名爲/ data的文件夾中。現在當容器被銷燬時,數據就會丟失。我有幾個解決方案可以將本地文件夾安裝到卷中。 什麼是處理AWS EC2中持久數據的好方法?AWS EC2上的Docker持久存儲解決方案

我最初的想法是在任務定義中使用S3卷或裝入卷。

回答

4

可以將volume driver plugin與支持映射EBS卷的docker結合使用。

Flocker是第一批量經理之一,它支持EBS並且已經發展到支持很多不同的後端。

Cloudstor是Dockers卷插件(它自帶Docker for AWS/Azure)。

Blocker是EBS唯一卷驅動程序。

S3對於所有文件系統操作都無法正常工作,因爲您無法更新對象的某個部分,因此更新一個文件的1個字節意味着您必須再次寫入整個對象。它也不是立即一致的,所以一次寫入然後讀取可能會給你奇怪/舊的結果。

+0

我試圖測試Cloudstor,但我不能在我的本地機器上安裝它。我使用: 「docker plugin install cloudstor」。 ,結果如下: 「來自守護程序的錯誤響應:對cloudstor拒絕訪問,存儲庫不存在或可能需要'docker login'」。 所以我嘗試用aws登錄並重新運行cmd但結果相同。 我如何安裝它? –

+0

您是否嘗試安裝[Docker for AWS](https://docs.docker.com/docker-for-aws/)? – Matt

1

EBS卷只能連接到一個實例,這意味着您只能在一個EC2實例中運行Docker容器。假設您將來希望在ECS羣集中運行多個容器時擴展您的解決方案,那麼您需要查看EFS。這是來自AWS的共享系統。唯一的問題是EFS在EBS上的性能下降。

-1

最簡單的方法(和最常用的方法)運行您的碼頭工人與-v /路徑/到/ host_folder:/路徑/到/ container_folder選項,所以容器將參考主機文件夾,信息會留在它將被重新啓動或重新創建之後。 Here有關碼頭體積系統的詳細信息。

相關問題