kubernetes Spring Cloud 微服务架构— (6)Kubernetes spring cloud 微服务-数据卷管理

本文涉及的产品
注册配置 MSE Nacos/ZooKeeper,118元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
简介: 第 6 章 数据卷管理 本章节主要介绍 Docker 数据卷的使用场景; 复制宿主机文件到容器中,怎样创建数据卷,以及数据卷的权限管理。

6.0 数据卷特点

数据卷是一个可供一个或多个容器使用的本地文件目录,主要特性如下:

1)数据卷可以在容器之间共享和重用

2)对数据卷的修改会立即生效

3)对数据卷的更新,不会影响镜像

4)数据卷默认会一直存在,即使容器被删除提示:数据卷的使用,类似于 Linux 下对目录进行 mount

6.1 使用场景

1)   程序目录

2)   程序日志

3)   集群数据目录

 

6.2 数据卷操作

#从容器内拷贝文件到主机上

6.2.1 语法:


/

docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|- 
#将容器的/test.txt 拷贝到主机的 /tmp目录中
[root@localhost ~]# docker run -it --name c1 -h c1-test centos /bin/bash 
[root@c1 /]# echo "docker" > /test.txt 
#cp 也可以拷贝目录 
[root@master ~]# docker cp c1:/test.txt /tmp/ 
[root@master ~]# ls /tmp/test.txt  
/tmp/test.txt
[root@master ~]# cat /tmp/test.txt docker

6.2.2 #推送文件至容器/tmp 目录下,通过容器ID

[root@docker ~]# echo 'ceshi' >ceshi.txt 
#复制本机的 ceshi.txt 文件到容器 c06fc46a1176 
#注意复制到容器中的文件与挂载本机的目录到容器有不同, 如果是挂载的模式,在本机目录写入文件那么也会同步到容器, 如果是复制文件,则内容不会同步
[root@master ~]# docker cp ./ceshi.txt c1:/tmp


/

 

6.2.3 #检查

[root@docker   ~]# docker attach c1   进入容器
[root@docker ~]# echo 'ceshi' >ceshi.txt 
#复制本机的 ceshi.txt 文件到容器 c06fc46a1176 
#注意复制到容器中的文件与挂载本机的目录到容器有不同, 如果是挂载的模式,在本机目录写入文件那么也会同步到容器, 如果是复制文件,则内容不会同步
[root@master ~]# docker cp ./ceshi.txt c1:/tmp 

6.3 创建数据卷

使用docker run 命令中使用-v 标识来给容器内添加一个数据卷,也可以在一次docker run 命令中, 多次使用-v 标识挂载多个数据卷。


数据卷的使用场景

 

 

6.3.1 创建一个新容器并挂载本地目录

[root@master ~]# echo "from   local txt" > /mnt/fromlocal.txt #宿主机操作 
#将本地目录/mnt 挂载到容器的/mnt 
[root@docker ~]# docker run -it -v   /mnt/:/mnt centos /bin/bash 
[root@97f04ce38226 mnt]# cat   fromlocal.txt  from local txt 
#在宿主机/mnt 创建目录, 会在容器挂载目录中实时看到

6.4 数据卷权限设置

docker 默认情况下是对数据卷有读写权限,但是通过这样的方式让数据卷只读

[root@demo ~]# docker run -it --name   centos-ro -v /mnt:/mnt:ro  centos   /bin/bash #创建文件报错 
[root@875aaa01cccc mnt]# touch t1.txt touch:   cannot touch 't1.txt': Read-only file system


相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
29天前
|
存储 Kubernetes 调度
|
23天前
|
运维 Kubernetes Docker
利用Docker和Kubernetes构建微服务架构
利用Docker和Kubernetes构建微服务架构
|
1天前
|
Java 开发者 微服务
从单体到微服务:如何借助 Spring Cloud 实现架构转型
**Spring Cloud** 是一套基于 Spring 框架的**微服务架构解决方案**,它提供了一系列的工具和组件,帮助开发者快速构建分布式系统,尤其是微服务架构。
91 68
从单体到微服务:如何借助 Spring Cloud 实现架构转型
|
6天前
|
Prometheus 监控 Java
如何全面监控所有的 Spring Boot 微服务
如何全面监控所有的 Spring Boot 微服务
19 3
|
21天前
|
监控 持续交付 Docker
Docker 容器化部署在微服务架构中的应用有哪些?
Docker 容器化部署在微服务架构中的应用有哪些?
|
21天前
|
监控 持续交付 Docker
Docker容器化部署在微服务架构中的应用
Docker容器化部署在微服务架构中的应用
|
23天前
|
Kubernetes API 调度
【赵渝强老师】Kubernetes的体系架构
本文介绍了Kubernetes的体系架构及其核心组件。Kubernetes采用主从分布式架构,由master主节点和多个node工作节点组成。master节点负责集群管理和调度,运行API Server、scheduler、controller-manager等服务组件;node节点运行kubelet、kube-proxy和Docker容器守护进程,负责实际业务应用的运行。文章还简要介绍了Kubernetes的附加组件及其作用。
|
21天前
|
安全 持续交付 Docker
微服务架构和 Docker 容器化部署的优点是什么?
微服务架构和 Docker 容器化部署的优点是什么?
|
22天前
|
存储 监控 Docker
探索微服务架构下的容器化部署
本文旨在深入探讨微服务架构下容器化部署的关键技术与实践,通过分析Docker容器技术如何促进微服务的灵活部署和高效管理,揭示其在现代软件开发中的重要性。文章将重点讨论容器化技术的优势、面临的挑战以及最佳实践策略,为读者提供一套完整的理论与实践相结合的指导方案。
|
25天前
|
运维 Kubernetes Cloud Native
Kubernetes云原生架构深度解析与实践指南####
本文深入探讨了Kubernetes作为领先的云原生应用编排平台,其设计理念、核心组件及高级特性。通过剖析Kubernetes的工作原理,结合具体案例分析,为读者呈现如何在实际项目中高效部署、管理和扩展容器化应用的策略与技巧。文章还涵盖了服务发现、负载均衡、配置管理、自动化伸缩等关键议题,旨在帮助开发者和运维人员掌握利用Kubernetes构建健壮、可伸缩的云原生生态系统的能力。 ####