数据卷

Docker 容器数据管理

这一章介绍如何在 Docker 内部以及容器之间管理数据,在容器中管理数据主要有两种方式:

  • 数据卷(Volumes)
  • 挂载主机目录 (Bind mounts)

首先来看数据卷。

数据卷是一个可供一个或多个容器使用的特殊目录,它绕过 UFS,可以提供很多有用的特性:

  • 数据卷可以在容器之间共享和重用
  • 对数据卷的修改会立马生效
  • 对数据卷的更新,不会影响镜像
  • 数据卷默认会一直存在,即使容器被删除

接下来我们看看如何通过 Docker 指令操作数据卷。

创建一个数据卷:

docker volume create my-vol

查看所有数据卷:

docker volume ls

启动一个挂载数据卷的容器可以这么做:

docker run -d -P \
    --name web \
    # -v my-vol:/wepapp \
    --mount source=my-vol,target=/webapp \
    training/webapp \
    python app.py

查看数据卷的具体信息:

docker inspect web

删除数据卷:

docker volume rm my-vol

清理无主的数据卷:

docker volume prune

上一篇: 私有仓库

下一篇: 挂载主机目录