docker 卷崩溃时会发生什么?
what happens when docker volume crashes?
好的,我正在阅读一篇关于 docker volume
与 mount
有何不同的文章。还有它比坐骑好在哪里。看完之后我明白了两件事
- 卷独立于文件系统
- 卷
can be
独立于容器
这意味着即使一个容器死了,负责保存与该容器相关的一些输出文件的卷仍然会运行,并且 运行 如果其他容器想要访问该数据。目前还不错。
然而,这让我想到了我真正的问题,卷毕竟是一个 docker 组件,很容易崩溃。音量崩溃时会发生什么?由于与装载不同,数据不会持久保存在文件存储中,我们如何恢复垂死的卷曾经携带的数据?
修改您的第一行,“1. 卷独立于 docker 容器的联合文件系统”。卷让您可以从构成 unionfs 的镜像层和容器的读写层之外挂载任何其他文件系统。卷实际上并不是存储数据的 docker 组件,它们是 docker 将数据从另一个位置映射到容器文件系统的引用。
该卷挂载可以是主机上的任何目录,它可以是带有默认存储在 /var/lib/docker/volumes 下的本地驱动程序的命名卷,或者它可以使用任何第三方卷驱动程序从外部源拉取数据。默认的本地卷驱动程序还可以使用适当的挂载选项从外部源(如 NFS)挂载数据。
因此,如果您的容器挂掉,卷的状态将写入源文件系统,您可以将同一卷装入另一个容器,从您离开的地方继续。如果您损坏了您的卷,那么您当然需要先修复它。始终备份您的卷,以防您需要回滚。
好的,我正在阅读一篇关于 docker volume
与 mount
有何不同的文章。还有它比坐骑好在哪里。看完之后我明白了两件事
- 卷独立于文件系统
- 卷
can be
独立于容器
这意味着即使一个容器死了,负责保存与该容器相关的一些输出文件的卷仍然会运行,并且 运行 如果其他容器想要访问该数据。目前还不错。
然而,这让我想到了我真正的问题,卷毕竟是一个 docker 组件,很容易崩溃。音量崩溃时会发生什么?由于与装载不同,数据不会持久保存在文件存储中,我们如何恢复垂死的卷曾经携带的数据?
修改您的第一行,“1. 卷独立于 docker 容器的联合文件系统”。卷让您可以从构成 unionfs 的镜像层和容器的读写层之外挂载任何其他文件系统。卷实际上并不是存储数据的 docker 组件,它们是 docker 将数据从另一个位置映射到容器文件系统的引用。
该卷挂载可以是主机上的任何目录,它可以是带有默认存储在 /var/lib/docker/volumes 下的本地驱动程序的命名卷,或者它可以使用任何第三方卷驱动程序从外部源拉取数据。默认的本地卷驱动程序还可以使用适当的挂载选项从外部源(如 NFS)挂载数据。
因此,如果您的容器挂掉,卷的状态将写入源文件系统,您可以将同一卷装入另一个容器,从您离开的地方继续。如果您损坏了您的卷,那么您当然需要先修复它。始终备份您的卷,以防您需要回滚。