Docker是一種流行的容器化平臺,它允許 開發人員 將應用程序和其所有依賴項打包為完整的運行時環境。但是由于 Docker 容器的易失性,如果不使用云外接存儲,容器內部的數據將在容器被刪除時丟失。因此云外接存儲(Cloud-attached storage)已成為關鍵組成部分。
云外接存儲允許 Docker 應用訪問云存儲的功能,例如 Amazon S3,Google Cloud Storage 等等。通過使用云存儲,開發人員可以確保應用程序數據的長期保留,即使容器被刪除。
最常用的云外接存儲是在Docker主機(host)和外部卷(volume)之間建立一個連接。當需要存儲容器數據時,可以使用標準 Docker 命令或 Docker Compose 文件來指定掛載配置。以下是一個基本的示例:
docker run -v /path/on/host:/path/on/volume -ti
以下是使用Docker Compose掛載外部存儲的示例:
version: "3" services: app: image: my_app_image volumes: - my_volume:/path/on/volume volumes: my_volume: driver: someclouddriver
在上述代碼中,驅動程序(driver)定義了如何訪問云外接存儲。某些云服務提供自己的驅動程序,但是可以使用任何符合 Docker Volume 插件 API 的驅動程序。
總體來說,使用云外接存儲可以幫助 Docker 應用程序在容器被刪除時保持其數據的完整性和可用性。通過掛載外部卷,開發人員可以指定數據存放位置,而且這些數據是持久的,可以與容器分離。