docker关于数据卷的操作

电玩女神 2021-11-01 15:42 308阅读 0赞

官网:https://docs.docker.com/storage/volumes/

1. 创建数据卷

  1. docker volume create my-volume

20190812095557728.png

2. 查看所有数据卷

  1. docker volume ls

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pzeDE4MjczMTE3MDAz_size_16_color_FFFFFF_t_70

3. 查看指定数据的信息

  1. docker volume inspect my-volume

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pzeDE4MjczMTE3MDAz_size_16_color_FFFFFF_t_70 1

4. 删除指定数据卷

  1. docker volume rm my-volume

20190812134333145.png

5. 使用数据卷启动容器

5.1 启动容器devtest,并将数据卷myvol2载入到容器的/app目录,如果数据卷myvol2不存在,则创建该数据卷

  1. docker run -d --name devtest --mount source=myvol2,target=/app nginx:latest
  2. 等价于
  3. docker run -d --name devtest -v source=myvol2,target=/app nginx:latest

5.2 查看容器devtest信息

  1. docker inspect devtest

5.3 数据卷信息在Mounts标签下

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pzeDE4MjczMTE3MDAz_size_16_color_FFFFFF_t_70 2

6. 使用数据卷启动服务

6.1 启动具有四个副本的nginx服务,每个副本使用本地数据卷myvol2

  1. docker service create -d --replicas=4 --name devtest-service --mount sour
  2. ce=myvol2,target=/app nginx:latest

20190813095931677.png

6.2 查看服务是否正在运行

  1. docker service ps devtest-service

20190813100218229.png

6.3 移除服务

  1. docker service rm devtest-service

7. 使用容器填充数据卷

7.1 创建一个名为 nginxtest的容器,并将容器的 /usr/sh are/nginx/html 目录下的数据填充到数据卷nginx-vol中

  1. docker run -d --name=nginxtest --mount source=nginx-vol,destination=/usr/share/nginx/html nginx:latest
  2. 等价于
  3. docker run -d --name=nginxtest -v source=nginx-vol,destination=/usr/share/nginx/html nginx:latest

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pzeDE4MjczMTE3MDAz_size_16_color_FFFFFF_t_70 3

7.2 查看容器信息

  1. docker inspect <CONTAINER NAME>
  2. docker inspect nginxtest

7.3 数据卷信息在Mounts标签下

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pzeDE4MjczMTE3MDAz_size_16_color_FFFFFF_t_70 4

8. 使用只读数据卷

8.1 通过ro在容器中的挂载点之后添加(默认为空)选项列表,将目录挂载为只读卷

  1. docker run -d --name=nginxtest --mount source=nginx-vol,destination=/usr/share/nginx/html,readonly nginx:latest
  2. 等价于
  3. docker run -d --name=nginxtest -v nginx-vol:/usr/share/nginx/html:ro nginx:latest

8.2 查看容器信息

  1. docker inspect nginxtest

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pzeDE4MjczMTE3MDAz_size_16_color_FFFFFF_t_70 5

移除所有未使用的数据卷

  1. docker volume prune

2019081309102693.png

发表评论

表情:
评论列表 (有 0 条评论,308人围观)

还没有评论,来说两句吧...

相关阅读

    相关 docker数据

    ​ Docker的镜像是由一系列的只读层组合而来的,当启动一个容器时,Docker加载镜像的所有只读层,并在最上层加人一个读写层。这个设计使得Docker可以提高镜像构建、存储

    相关 docker数据

    利用数据卷可以查看容器内应用产生的数据,或者把容器内的数据进行备份,或者多个容器之间共享数据。数据卷有以下特点: 数据卷可以在容器之间共享和重用; 数据卷修改会立

    相关 Docker数据&数据容器

    一,概念解析     1,数据卷:数据卷就是在宿主中可以在容器之间进行共享和重用的一系列和文件和文件夹,通过docker run -v命令可以将数据卷挂载到对应的容器目录空间

    相关 Docker 数据

    `数据卷` 是一个可供一个或多个容器使用的特殊目录,它绕过 UFS,可以提供很多有用的特性: - `数据卷` 可以在容器之间共享和重用 - 对 `数据卷` 的修改会立马生...