云原生系列 六【轻松入门容器基础操作】

news2025/8/8 4:25:58

✅作者简介:

                  CSDN内容合伙人,全栈领域新星创作者,阿里云专家博主,华为云享专家博主,掘金后端评审团成员

💕前言:

最近云原生领域热火朝天,那么云原生是什么?何为云原生?云原生用来干什么的?今天学长通过华为的沙箱实验操作带领大家走进“云”时代~~

                           再次渡入繁世,人潮汹涌,眼里茫然,信仰永恒,皆为华夏

img

目录

6. 容器存储收起

6.1 绑定挂载

6.2 码头工人管理的卷

6.3 体积容器

关注博主不迷路,叶秋学长带你上高速~~

6. 容器存储收起

6.1 绑定挂载

①运行容器,并将宿主机上的目录挂载到容器。

                                mkdir -p /home/container/htdocs
                            
                                cd /home/container/htdocs/
                            
                                docker run -d -p 80:80 -v /home/container/htdocs/:/usr/local/apache2/htdocs/ httpd
                            
                                docker container ls
                            

使用docker inspect命令查询容器元数据可以获取mount具体信息。

注意:请使用前一条命令返回的容器ID替换命令中的【容器ID】。

                                docker inspect 容器ID
                            

②宿主机目录内更新文件,验证容器内读取。

                                cd /home/container/htdocs/
                            
                                echo “this is page from host directory.” > index.html
                            
                                cat index.html
                            

③删除容器,验证数据持久化。 使用docker rm删除容器,(删除前先停止容器),并在宿主机挂载源查看文件内容。

注意:请使用第一步的命令返回的容器ID替换命令中的【容器ID】。

                                docker rm 容器ID -f
                            
                                cd /home/container/htdocs/
                            
                                ls
                            
                                cat index.html
                            

6.2 码头工人管理的卷

(1)运行容器,并使用docker managed volume挂载到容器.

                                docker run -d -p 80:80 -v /usr/local/apache2/htdocs/ httpd
                            

查询容器元数据可以获取mount具体信息。

                                docker container ls
                            
                                docker inspect 容器ID
                            

说明:容器元数据mount具体信息内可以看到mount类型为volume,并且源路径由系统自动分配。

②在容器内修改文件内容,并在宿主机挂载原路径验证。 在容器内修改挂载路径的文件内容,并在宿主机通过curl验证显示结果。

注意:请使用第一步返回的容器ID替换命令中的【容器ID】。

                                docker exec -it 容器ID bash
                            
                                cd htdocs/
                            
                                echo "this is page from docker managed volume. " > index.html
                            
                                exit
                            
                                curl localhost:80
                            

通过第一步中获取的“source” 信息或docker inspect命令获取宿主机挂载源路径,然后验证其文件内容。

                                cd 挂载源路径
                            
                                ls
                            
                                cat index.html
                            

③删除容器,验证数据持久化。 可以使用docker rm删除容器,(删除前请先停止容器),并在宿主机挂载源查看文件内容。容器ID与挂载源路径同上。

                                docker rm 容器ID -f
                            
                                cd 挂载源路径
                            
                                ls
                            
                                cat index.html
                            

6.3 体积容器

(1)创建预备卷容器。 说明:Volume container可以给其他容器提供bind mount或docker Managed Volume。volume container不需要处于运行状态,创建出来即可。 在宿主机创建路径和文件,作为bind mount的源路径。

                                mkdir -p /home/vccontainer/htdocs
                            
                                cd /home/vccontainer/htdocs
                            
                                echo " this is page from vccontainer. " > index.html
                            
                                cat index.html
                            

创建预备卷容器。

                                docker create --name vccontainer -v /home/vccontainer/htdocs:/usr/local/apache2/htdocs -v /other/tools/ busybox
                            

注意:请使用前一步返回的容器ID替换命令中的【容器ID】。

                                docker inspect 容器ID
                            

说明:该volume container元数据内mount部分记录了bind mount类型和docker managed volume类型,这两个部分均可以提供给其他容器。 (2)运行容器,使用步骤1中volume container提供的卷。

                                docker run -td -p 80:80 --volumes-from vccontainer busybox
                            

注意:请使用前一步返回的容器ID替换命令中的【容器ID】。

                                docker inspect 容器ID
                            

说明:通过查询该容器元数据,其mount部分内容和步骤1中volume container完全一致。 ③针对步骤2运行的容器,验证容器内路径和宿主机路径信息。

                                docker exec -it 容器ID sh
                            

在容器内docker manage volume挂载路径创建文件,验证宿主机路径信息。

                                cd /other/tools/
                            
                                echo “this is page from container.”> test.out
                            
                                exit
                            

通过第一步中获取的“source” 信息或docker inspect命令获取宿主机挂载源路径。

                                cd 挂载源路径
                            
                                cat test.out

关注博主不迷路,叶秋学长带你上高速~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/34449.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深度学习第一次作业 - 波士顿房价预测

文章目录划分训练集和测试集建立线性回归模型特征选择重建模型尝试使用GradientBoostingimport pandas as pd import numpy as np import seaborn as sns from sklearn.linear_model import LinearRegression from sklearn.model_selection import train_test_split from sklea…

第一个SpringBoot项目的创建

目录 一、SpringBoot是什么? 初识springboot springboot的优点 二、SpringBoot项目的创建与简单运行 🍑使用idea创建springboot项目 🍑 Spring Boot 项目目录介绍 🍑springboot项目的简单运行与使用 一、SpringBoot是什么&a…

emq证书过期问题

近期在进行远程漏洞扫描后发现,有存在服务器证书过期的情况,可以通过以下步骤进行问题的处理: 1、先根据对应出现漏洞的端口进行检查,看端口对应的服务是哪个服务: netstat -tunlp|grep 端口号 2、通过命令&#xf…

40 - 前置操作符和后置操作符

---- 整理自狄泰软件唐佐林老师课程 问题 下面代码的区别?why? 1.1 编程实验 汇编中的处理是一样的,所以不可能从编译后的二进制程序还原 i 还是 i 1.2 事实 现代编译器产品会对代码进行优化优化使得最终的二进制程序更加高效优化后的二…

[附源码]java毕业设计渔具店管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

【Linux】系统编程之网络编程(socket)

目录一、Socket编程1、TCP/UDP(1)TCP/UDP区别(2)TCP/UDP服务端和客户端的通信流程2、IP地址和端口号(1)IP地址(2)端口号二、字节序1、字节系相关概念2、有关字节序转换的函数&#x…

小小王总,如何变成任正非、化腾、强东这样的巨人!

原创:小姐姐味道(微信公众号ID:xjjdog),欢迎分享,非公众号转载保留此声明。王总特别迷信外面的企业培训。当遇到问题时,他喜欢去取经。这个经不像唐僧取经一样,需要历经九九八十一难…

ImmunoChemistry艾美捷通用阻断ELISA阻断缓冲液说明书

ImmunoChemistry艾美捷通用阻断ELISA阻断缓冲液包含适用于大多数抗体捕获ELISA格式和肽或蛋白质抗原下调ELISA格式的哺乳动物蛋白质阻断剂。这种封闭缓冲液为干燥的抗原或抗体外壳蛋白提供了长期稳定的环境,并使测定过程中的非特异性结合相互作用最小化。 General B…

中石油测井-技术研发岗回顾

前提: 时间:2022年11月25日 结果:暂未可知 阶段:面试结束 等结果 整个过程中,注意查看官网 中石油招聘 投递之前关注一下基本要求(学历-专业) 招聘人数:应聘人数 (通过能…

【富文本编辑器】Ueditor的demo——创建、修改——代码使用

文章目录富文本编辑器简述:使用:1.下载的demo:2.项目创建:3.修改代码:4.使用富文本编辑器:示例:富文本编辑器 Ueditor的资源官网:http://fex.baidu.com/ueditor/ 资源下载官网&…

【Linux】进程优先级(PRI,NI)和进程切换

1、进程优先级 无论是外设还是CPU,所能提供给操作系统的资源很少,而操作系统中的进程又非常多,安排谁先使用资源,就需要进程优先级的存在。   查看进程优先级 ps -al 查看当前运行进程的优先级信息。 ps -al | grep test 配合…

卫龙食品冲刺港股:上半年经调整利润超4亿 高瓴与红杉是股东

雷帝网 雷建平 11月24日卫龙食品日前更新招股书,准备在香港上市。这是卫龙食品通过聆讯后第二次更新招股书。卫龙食品的前身可追溯到20多年前。当年,卫龙食品创办人刘卫平下了火车,找到一个简陋的小旅馆休息,天亮后,就…

DirectX12 - Swap Chain(交换链)

这里是SunshineBooming,GPU公司一枚小小的Driver工程师,主要工作是写DirectX12 Driver,我会持续更新这个DX12 Spec系列,可能比较冷门,但是都是干货和工作中的心得体会,有任何GPU相关的问题都可以在评论区互…

宠物经济:千亿级的孤独生意,如何用智能化玩出新花样?

今年双十一,由铲屎官们主导的宠物经济成功实现逆增长,在众多行业中脱颖而出,成为消费疲软环境下的一匹强势黑马。 天猫、京东数据显示:双十一期间,天猫平台宠物烘焙粮销量同比增长超 700%,京东平台宠物高端…

js逆向tips-某思录登录

0. 写在最前 现在很多时候我们再网页上进行操作时都是用http协议进行一个交流,前端后也是如此,现在的开发模式大部分都是前后端分离的一个交互模式,那就意味着前端发送请求时也是和我们点击按钮一样去向后端发送一个请求,那这种请…

Pr 时间重映射卡点

哈喽,各位小伙伴!今天我们来学习一下如何通过用Pr时间重映射做出卡点的效果~ 卡点音乐 一首适合卡点(群青为例)的音乐可以帮助我们更好的掌握视频的节奏,卡点可以采用手动卡点,方法可以通过在峰值最高处标…

3.66 OrCAD中不同的工程文件,怎么输出所需要工程文件的网表?OrCAD中怎么给元器件自定义属性?

笔者电子信息专业硕士毕业,获得过多次电子设计大赛、大学生智能车、数学建模国奖,现就职于南京某半导体芯片公司,从事硬件研发,电路设计研究。对于学电子的小伙伴,深知入门的不易,特开次博客交流分享经验&a…

vue如何通过VNode渲染节点

vue如何通过VNode渲染节点vue的源码包含三大核心实现一个Mini-Vue渲染系统的实现vue2和vue3写法上的区别vue的源码包含三大核心 Compiler模块:编译模板系统 Runtime模块:也可以称之为Renderer模块,真正的渲染的模块 Reactivity模块&#x…

合成孔径雷达地面运动目标检测技术研究——基于概率图(Matlab代码实现)

🍒🍒🍒欢迎关注🌈🌈🌈 📝个人主页:我爱Matlab 👍点赞➕评论➕收藏 养成习惯(一键三连)🌻🌻🌻 🍌希…

SpringCloud学习笔记(四)

文章目录SpringCloud学习笔记(四)1.说在前面2.OpenFeign 简介3.OpenFeign 快速入门3.1 本次调用的设计图3.2 启动一个 eureka-server 服务,这里不重复演示,参考 eureka3.3 先创建 01-order-service,选择依赖3.4 创建 02-user-consumer&#x…