在上一篇中,咱们对Docker中的容器数据卷做了介绍。已经知道了容器数据卷是什么?能干什么用。那么本篇咱们就来实战容器数据卷,Docker容器数据卷案例主要做以下三个案例
1:宿主机(也就是Docker所安装的机器)与容器之间的映射-让Docker可以直接访问宿主机上面的指定目录;
2:读写规则映射添加说明-数据券默认是读写权限的,我们可以设置只读权限
3:卷的继承和共享-容器1做了映射后,容器2可以继承容器1,然后容器2也就有了映射关系
大家好,我是凯哥Java(kaigejava),乐于分享,每日更新技术文章,欢迎大家关注“凯哥Java”,及时了解更多。让我们一起学Java。也欢迎大家有事没事就来和凯哥聊聊~~~
直通车,本系列教程已发布文章,快速到达,《Docker学习系列》教程已经发布的内容如下:
【图文教程】Windows11下安装Docker Desktop
【填坑】在windows系统下安装Docker Desktop后迁移镜像位置
【Docker学习系列】Docker学习1-docker安装
【Docker学习系列】Docker学习2-docker设置镜像加速器
【Docker学习系列】Docker学习3-docker的run命令干了什么?docker为什么比虚拟机快?
【Docker学习系列】Docker学习2-常用命令之启动命令和镜像命令
【Docker学习系列】Docker学习系列3:常用命令之容器命令
【Docker学习系列】Docker学习4-常用命令之重要的容器命令
【Docker教程系列】Docker学习5-Docker镜像理解
【Docker教程系列】Docker学习6-Docker镜像commit操作案例
【Docker学习教程系列】7-如何将本地的Docker镜像发布到阿里云
【Docker学习教程系列】8-如何将本地的Docker镜像发布到私服?
1:宿主机VS容器之间映射添加容器卷
1.1:命令公式:
docker run -it --privileged=true -v /宿主机绝对路径目录:/容器内目录 镜像名
注意这个命令是在宿主机上执行
实例:
将宿主机/tmp/host_data目录映射到容器的/tmp/docker_data上
在d为:bdea29051ebb的容器i的/tmp/docker_data里面创建一个indocker.txt
接着,我们回到宿主机中,查看tmp/host_data目录下:
同理,在宿主机上创建了inhost.txt文件,在容器中也可以看到
1.2:查看数据卷是否挂载成功
命令公式:
docker inspect 容器id
再到 Mounts这个部分:
我们可以看到type是bind,sorce是宿主机的,destination是容器的
1.3:容器和宿主机之间数据共享
上文案例中的,indocker.txt和inhost.txt案例就是。
思考:当把容器关闭后,在宿主机的目录中,在创建了一个c.txt文件之后,在启动容器,那么容器的挂载目录中会有c.txt文件吗 ?
答案:c.txt文件依然会在容器中
2:读写规则映射添加说明
当宿主机和容器挂载数据卷之后,默认的读写权限就是:“读写”
设置只读权限的命令公式
docker run -it --privileged=true -v /宿主机绝对路径目录:/容器内目录:ro 镜像名称
和默认的区别就是加上了ro参数
ro:read only.
如果在容器内写操作会有以下提示:
3:卷的继承和共享
案例:
容器1完成和宿主机的映射
容器2继承容器1的卷规则
容器2继承容器1的卷规则:
命令公式
docker run -it --privileged=true --volumes-from 父类 [name] 镜像名
在u2容器中,查看tmp目录
可以看到已经存在了。
相关推荐
SpringCloudAlibaba 微服务 Docker 容器打包和部署示例实战 本篇文章将详细讲解如何使用 SpringCloudAlibaba 框架创建库存微服务和订单微服务,实现服务注册与发现,并将微服务部署到 Docker 容器中。 知识点1:...
简介:一、Docker概述; 二、Docker安装使用; 三、Docker的应用场景; 四、案例:安装Docker并实现镜像、容器管理;五、Docker三剑客项目;六、Docker的安全以及底层实现
在这篇文章中,我们将学习如何使用 Docker 运行 MySQL 服务。我们将从 Docker 中拉取 MySQL 5.6 镜像,运行容器,并使用宿主机访问容器中的 MySQL 服务。 一、Docker 简介 ---------------- Docker 是一个容器化...
这个是java service对thrift的调用,thrift客户端生成,一个单独的例子
本文将以原理 实战的方式,首先对“微服务”相关的概念进行知识点扫盲,然后开始手把手教你搭建这一整套的微服务系统。 这套微服务框架能干啥? 这套系统搭建完之后,那可就厉害了: 微服务架构 你的整个应用程序...
由于标签中有“源码”和“工具”,我们可以推测这篇文章可能包含了蝴蝶容器的源代码分析,以及如何将它作为开发或运维的工具来使用。 “源码”标签意味着我们可能会探讨到容器技术的实现细节,例如Docker或...
《指尖的Android之实战篇---服务器端》这篇文章主要聚焦于Android应用开发中的服务器端实践,旨在帮助开发者深入了解如何构建和优化Android应用与后端服务的交互。在Android应用开发中,服务器端扮演着至关重要的...
最后,现代Java开发中,容器化和微服务架构也变得越来越重要,Docker、Kubernetes、Spring Boot、Spring Cloud等技术的介绍和实践可能会在某些文章中出现。 这个压缩包作为Java学习的资源库,不仅适合自学,也可以...
5. **容器化技术**:Docker和Kubernetes是目前非常流行的容器化和容器编排工具,文章可能涉及如何打包应用、创建镜像以及集群管理。 6. **云计算服务**:如AWS、Azure、Google Cloud等,可能有文章介绍如何选择合适...
而这一切,都是基于"场景"为中心的信息安全实验平台实现的,其底层技术包括了KVM虚拟化技术和Docker容器技术。KVM和Docker的结合,不仅提高了资源的利用率,同时也提高了环境搭建的速度,让信息安全的学习和实验更加...
通过编写Dockerfile,可以轻松将应用部署到Docker容器中。 8. **持续集成/持续部署(CI/CD)**:结合Jenkins、GitLab CI/CD等工具,可以自动化构建、测试和部署SpringBoot应用,实现DevOps流程。 在“springboot_...
6. 部署与运维:了解如何将应用部署到服务器,如使用Nginx作为反向代理,Gunicorn或uWSGI作为Wsgi服务器,以及如何配置Docker容器化应用,这些都是高效开发的一部分。同时,了解监控工具如Prometheus和Grafana,可以...
- **Docker化**:将Node.js应用容器化,利用Docker进行部署。 - **CI/CD**:配置GitHub Actions或Jenkins等工具,实现持续集成和持续部署。 9. **实战项目** - **RESTful API服务**:构建一个完整的RESTful API...
《Jenkins持续集成插件实战篇》主要涵盖了 Jenkins 在软件开发过程中的持续集成实践,它是一种强大的自动化工具,尤其在持续集成和持续部署(CI/CD)领域具有广泛的应用。以下将详细介绍 Jenkins 及其在实际工作中的...
4. **Docker** 和 **Kubernetes**:容器化和编排工具,用于微服务的部署和管理,提供高度的自动化和可移植性。 【高可用集群篇】将讲解如何构建和管理微服务集群,确保服务的稳定性和高可用性: 1. **服务治理**:...