2015-12-21 57 views
5

因此,我將此應用程序作爲服務。每個應用程序是用戶特定的所以對於每個用戶,我想推出一個新的docker實例。應該有可能重新啓動它最後一次離開的docker實例。所以它也需要持久存儲。爲每個用戶啓動碼頭集裝箱

我想知道是否有任何圖書館/框架,使這更容易?如果這個庫是golang庫,會很棒。提示1:它不一樣,但類似於koding.com等服務爲每個用戶/用戶的項目啓動一個單獨的容器。

+0

如何使用網絡存儲器來存儲持久性數據? –

+0

持久數據本身不是問題。這個庫應該將這個持久數據映射到一個用戶,並根據用戶將其掛載到新啓動的docker。這並不困難。但想知道是否有一個框架已經存在,我可以使用或至少看看架構和模仿。 –

+0

我認爲這種服務是雲的未來。想知道爲什麼沒有可用的開源庫。 我是親雲。所以我將所有的應用程序轉換爲Cloud。但其中一些不是通用服務。我的意思是通用的,例如一個MMORPG遊戲或郵件客戶端。他們可能有一個實例正在運行,用戶/實例被數據庫抽象。 如果運行實例只能爲一個用戶運行,該怎麼辦?例如,一個IDE或模擬器。 –

回答

5

看看Giant Swarm。它允許您構建,部署和管理集裝箱化的服務器應用程序(微服務)。但我認爲它現在處於內測階段。

您在巨羣中運行的服務在服務定義 文件中定義。在此定義中,您可以根據需要組合任意數量的Docker鏡像,每個鏡像形成一個組件。要部署 服務,首先需要使用Docker客戶端或CI/CD管道創建 並部署Docker鏡像。然後,您使用Giant Swarm的客戶端軟件 或我們的API根據您的服務定義和 圖像開始在集羣上創建和編排Docker 容器。