Docker 数据管理

  • 一、数据卷
    • 1.创建一个数据卷
    • 2.启动一个挂载数据卷的容器
    • 3.查看数据卷的具体信息
    • 4.删除数据卷
  • 二、挂载主机目录
    • 1.挂载一个主机目录作为数据卷
    • 2.挂载一个本地主机文件作为数据卷

一、数据卷

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

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

1.创建一个数据卷

使用命令$ docker volume create来创建数据卷,通过$ docker volume ls查看数据卷,使用$ docker volume inspect可以查看指定数据卷的信息

2.启动一个挂载数据卷的容器

在用 docker run 命令的时候,使用 --mount 标记来将数据卷挂载到容器里。在一次 docker run 中可以挂载多个 数据卷。例如:

$ docker run -d -P \--name web \--mount source=datawhale,target=/usr/share/nginx/html \nginx:alpine

–-mount参数说明:
source :数据卷
target :是容器内文件系统挂载点

3.查看数据卷的具体信息

在主机里使用命令$ docker inspect web可以查看 web 容器的信息

4.删除数据卷

使用命令$ docker volume rm来移除数据卷。

数据卷是被设计用来持久化数据的,它的生命周期独立于容器,Docker 不会在容器被删除后自动删除 数据卷,并且也不存在垃圾回收这样的机制来处理没有任何容器引用的 数据卷。如果需要在删除容器的同时移除数据卷。可以在删除容器的时候使用 docker rm -v 这个命令。

二、挂载主机目录

1.挂载一个主机目录作为数据卷

使用 --mount 标记可以指定挂载一个本地主机的目录到容器中去。

$ docker run -d -P \--name web \--mount type=bind,source=/src/webapp,target=/usr/share/nginx/html \nginx:alpine

上面的命令加载主机的 /src/webapp 目录到容器的 /usr/share/nginx/html目录。这个功能在进行测试的时候十分方便,比如用户可以放置一些程序到本地目录中,来查看容器是否正常工作。本地目录的路径必须是绝对路径,以前使用 -v 参数时如果本地目录不存在 Docker 会自动为你创建一个文件夹,现在使用 --mount 参数时如果本地目录不存在,Docker 会报错。

Docker 挂载主机目录的默认权限是 读写,用户也可以通过增加 readonly 指定为 只读。

2.挂载一个本地主机文件作为数据卷

–mount 标记也可以从主机挂载单个文件到容器中

$ docker run --rm -it \--mount type=bind,source=$HOME/.bash_history,target=/root/.bash_history \ubuntu:18.04 \bash

Docker组队学习(三)相关推荐

  1. Docker组队学习(一)

    文章目录 一.Docker简介 二.三大基本概念 1.镜像(Image) 分层存储 2.容器(Container) 3.仓库(Repository) (1)Docker Registry 公开服务 ( ...

  2. Docker组队学习(二)

    文章目录 一.Docker镜像 1.获取镜像 2.列出镜像 3.删除本地镜像 Untagged 和 Deleted 4.Dockerfile制作镜像 二.Docker容器 内容来源于Chapter 2 ...

  3. 【组队学习】【24期】Datawhale组队学习内容介绍

    第24期 Datawhale 组队学习活动马上就要开始啦! 本次组队学习的内容为: 零基础入门语音识别(食物声音识别) Docker教程 数据挖掘实践(智慧海洋) 集成学习(中) 河北邀请赛(二手车价 ...

  4. Docker学习三:Docker 数据管理

    前言 本次学习来自于datawhale组队学习: 教程地址为: https://github.com/datawhalechina/team-learning-program/tree/master/ ...

  5. 【组队学习】【24期】Docker教程

    Docker教程 开源内容: https://github.com/datawhalechina/team-learning-program/tree/master/Docker 基本信息 贡献人员: ...

  6. 【Docker 学习笔记】Docker架构及三要素

    文章目录 一.Docker 简介 二.Docker 架构 1. Docker 客户端和服务器 2. Docker 架构图 3. Docker 运行流程图 三.Docker 三要素 1. 镜像(Imag ...

  7. 组队学习-NLP实践-中文预训练模型泛化能力挑战赛(文本分类,bert)

    组队学习-NLP实践-中文预训练模型泛化能力挑战赛 Docker 安装与使用 阿里云镜像仓库 baseline 本机运行并提交 Docker 安装与使用 参考:https://mp.weixin.qq ...

  8. 【新周报(051)】Datawhale组队学习

    记录: 按照本周规划,我们正在与阿里云天池合作开展"在线编程训练营"的组队学习活动,在这次活动中我们已经完成12个知识点(数组.链表.栈.字符串.树.位运算.双指针.搜索.排序.动 ...

  9. 【组队学习】一月微信图文索引

    一月微信图文索引 一.组队学习相关 周报: [新周报(049)]Datawhale组队学习 Datawhale组队学习周报(第048周) Datawhale组队学习周报(第047周) Datawhal ...

最新文章

  1. 非本地类型不能定义方法 cannot define new methods on non-local type time.Duration
  2. redux logic_Redux-Logic简介
  3. 数据解读“特殊”春运:“返乡过年”人数同比降五成,这些人成今年春运主力...
  4. 博士在淘宝“扫垃圾”
  5. SQL Server 监控统计阻塞脚本信息
  6. 成功解决\h5py\__init__.py:34: FutureWarning: Conversion of the second argument of issubdtype from `float
  7. 重温JSP学习笔记--El表达式
  8. java java se_Java 8 SE可选,严格的方法
  9. PHP多线程的实现(PHP多线程类)
  10. 在webpack和vue-cli上的rem适配终极方案
  11. Linux怎么添加交换空间,如何在Ubuntu上增加swap交换空间
  12. ActionScript 3.0
  13. C++中this指针的用法
  14. 在中国网络管理技术大会上的主题演讲
  15. java开发工具比较(16个工具修订版)
  16. Android实战之淘宝领券(二)
  17. 软件项目管理MOOC(北邮)——第十章测试答案
  18. ROS2探索(一)Publisher-Subscriber的内部过程
  19. java.lang.NoClassDefFoundError: Failed resolution of: Landroid/view/View$OnUnhandledKeyEventListener
  20. 页面练习my blog day51

热门文章

  1. Android ConstraintLayout 最新使用小结
  2. 记一次zookeeper连接数暴增事件
  3. MAC PHP Composer
  4. 新型智慧城市建设绘出沈阳“N朵云”
  5. tomcat-maven-plugin问题汇总
  6. Eclipse的Ctrl+Shift+R中过滤文件类型
  7. LotusScript (转)
  8. java 箭头函数_箭头函数丶Java教程网-IT开发者们的技术天堂
  9. 剑指offer面试题[54]-表示数值的字符串
  10. 21天jmeter打卡day4-请求并查看响应信息