Docker 是一種流行的容器化解決方案,能夠快速地開發、部署及運行應用程序。但它為了使容器更輕便且靈活,不會在本地磁盤上進行數據持久化。下面我們將了解如何在 Docker 中做數據持久化。
版本 首先,建議使用 Docker 的版本大于 1.9,因為該版本提供了卷(Volume)功能,便于管理持久性數據。 卷 卷(Volume)是 Docker 實現數據持久化的一種方式。卷是由 Docker 管理生命周期的文件或目錄,處于宿主機和 Docker 容器之間的一種獨立于容器的持久化數據存儲方案。通過使用卷,可以將容器中的目錄與宿主機上的目錄進行綁定,從而實現數據持久化的需求。 使用命令將當前目錄綁定到容器中的 /app 目錄: $ docker run -v /宿主機目錄:/app image_name 例如: $ docker run -v /home/data:/app nginx 注意:如果宿主機上的目錄不存在,Docker 會自動創建該目錄。 卷容器 另一種實現數據持久化的方式是使用卷容器(Volume Container)。卷容器是專門用于管理數據卷的容器,對數據卷進行統一管理,掌握生命周期,方便數據共享和備份。 創建一個數據卷容器: $ docker create -v /宿主機目錄:/data --name volume_container_name image_name /bin/true 然后將數據卷容器與其他容器進行數據共享: $ docker run --volumes-from volume_container_name image_name 除了上述這些方法,還可以使用網絡共享協議,例如 NFS、CIFS 等方式,實現數據持久化需求。但最簡單的還是使用 Docker 的卷功能。