docker 数据管理 与容器互联

本文涉及的产品
数据管理 DMS,安全协同 3个实例 3个月
推荐场景:
学生管理系统数据库
简介: docker 数据管理 与容器互联

一      Docker 的数据管理

管理 Docker 容器中数据主要有两种方式:数据卷(Data Volumes)和数据卷容器(DataVolumes Containers)。

 

1, 数据卷

1.1 数据卷是什么

数据卷是一个供容器使用的特殊目录,位于容器中。可将宿主机的目录挂载到数据卷上,对数据卷的修改操作立刻可见,并且更新数据不会影响镜像,从而实现数据在宿主机与容器之间的迁移。数据卷的使用类似于 Linux 下对目录进行的 mount 操作。

 

1.2  数据卷 创建方式

注意:宿主机本地目录的路径必须是使用绝对路径。如果路径不存在,Docker会自动创建相应的路径。

/var/www  是宿主机的目录    /data1  是容器内的目录

docker run -v /var/www:/data1 --name web1 -it centos:7 /bin/bash    
  
#-v 选项可以在容器内创建数据卷
1.3  数据卷演示

启动test53 容器   将宿主机 /opt/sanguo/文件夹    和 容器内 /data/ 关联

可以看到 宿主机  会自动生成  对应的文件夹

进入容器的挂载目录   创建数据

可以看到 容器挂载目录的数据     宿主机对应的目录也有数据了

2,   数据卷容器

2.1  数据卷容器 是什么

如果需要在容器之间共享一些数据,最简单的方法就是使用数据卷容器。数据卷容器是一个普通的容器,专门提供数据卷给其他容器挂载使用。

 

2.2  如何创建 数据卷容器
#创建一个容器作为数据卷容器
docker run --name web2 -v /data1 -v /data2 -it centos:7 /bin/bash
echo "this is web2" > /data1/abc.txt
echo "THIS IS WEB2" > /data2/ABC.txt
 
 
#使用 --volumes-from 来挂载 web2 容器中的数据卷到新的容器
docker run -it --volumes-from web2 --name web3 centos:7 /bin/bash
cat /data1/abc.txt
cat /data2/ABC.txt
2.3   数据卷容器演示

启动容器 test59   建两个共享数据的文件夹  data1  和data2

进到容器 test59  发现data1  和data2 都自动创建了      这边做一些数据源

使用 --volumes-from 来挂载   容器中的数据卷到新的容器

进入新容器  test60  查看数据  同步成功

二      容器互联(使用centos镜像

1, 容器互联是什么

容器互联是通过容器的名称在容器间建立一条专门的网络通信隧道。简单点说,就是会在源容器和接收容器之间建立一条隧道,接收容器可以看到源容器指定的信息。

 

2,如何   容器互联

#创建并运行源容器取名web1
docker run -itd -P --name web1 centos:7 /bin/bash 
  
#创建并运行接收容器取名web2,使用--link选项指定连接容器以实现容器互联
docker run -itd -P --name web2 --link web1:web1 centos:7 /bin/bash      
#--link 容器名: 连接的别名
 
#进web2 容器, ping web1
docker exec -it web2 bash
ping web1

3, 演示容器互联

开启容器test61   再开启随机端口

再开启容器 62     连接容器 test61:test61    (容器名:别名)

进入容器62  可以ping  容器61

注意! 此处只做了容器62去连接61   没做61 连接62   所以61是ping 不通62得

三     总结

数据卷类似挂载

数据卷容器    类似文件共享

容器互联   让每个有独立空间的容器   也可以互相看到

相关实践学习
MySQL基础-学生管理系统数据库设计
本场景介绍如何使用DMS工具连接RDS,并使用DMS图形化工具创建数据库表。
相关文章
|
9天前
|
Kubernetes Cloud Native Docker
云原生时代的容器化实践:Docker和Kubernetes入门
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性和效率的关键。本篇文章将引导读者了解如何利用Docker进行容器化打包及部署,以及Kubernetes集群管理的基础操作,帮助初学者快速入门云原生的世界。通过实际案例分析,我们将深入探讨这些技术在现代IT架构中的应用与影响。
36 2
|
6天前
|
运维 Cloud Native 虚拟化
一文吃透云原生 Docker 容器,建议收藏!
本文深入解析云原生Docker容器技术,涵盖容器与Docker的概念、优势、架构设计及应用场景等,建议收藏。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
一文吃透云原生 Docker 容器,建议收藏!
|
7天前
|
缓存 监控 开发者
掌握Docker容器化技术:提升开发效率的利器
在现代软件开发中,Docker容器化技术成为提升开发效率和应用部署灵活性的重要工具。本文介绍Docker的基本概念,并分享Dockerfile最佳实践、容器网络配置、环境变量和秘密管理、容器监控与日志管理、Docker Compose以及CI/CD集成等技巧,帮助开发者更高效地利用Docker。
|
8天前
|
监控 持续交付 Docker
Docker 容器化部署在微服务架构中的应用有哪些?
Docker 容器化部署在微服务架构中的应用有哪些?
|
8天前
|
监控 持续交付 Docker
Docker容器化部署在微服务架构中的应用
Docker容器化部署在微服务架构中的应用
|
8天前
|
安全 持续交付 Docker
微服务架构和 Docker 容器化部署的优点是什么?
微服务架构和 Docker 容器化部署的优点是什么?
|
18天前
|
Kubernetes 监控 开发者
掌握容器化:Docker与Kubernetes的最佳实践
【10月更文挑战第26天】本文深入探讨了Docker和Kubernetes的最佳实践,涵盖Dockerfile优化、数据卷管理、网络配置、Pod设计、服务发现与负载均衡、声明式更新等内容。同时介绍了容器化现有应用、自动化部署、监控与日志等开发技巧,以及Docker Compose和Helm等实用工具。旨在帮助开发者提高开发效率和系统稳定性,构建现代、高效、可扩展的应用。
|
14天前
|
关系型数据库 MySQL API
|
1月前
|
存储 Docker 容器
docker中挂载数据卷到容器
【10月更文挑战第12天】
70 5
|
11天前
|
运维 开发者 Docker
Docker Compose:简化容器化应用的部署与管理
Docker Compose:简化容器化应用的部署与管理