Docker(2)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: Docker(2)

UnionFs (联合文件系统)


Union文件系统(UnionFs)是一种分层、轻量级并且高性能的文件系统,支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下。Union文件系统是 Docker镜像的基础。镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像一次同时加载多个文件系统,但从外面看起来,只能看到一个文件系统,联合加载会把各层文件系统叠加起来,这样最终的文件系统会包含所有底层的文件和目录


Commit 镜像

docker run -it -d --name tomcat1 -p 4200:8080 tomcat#运行容器
docker exec -it tomcat1 /bin/bash #进入正在运行的容器
cp -r webapps.dist/* webapps #copy tomcat 容器中的问价
docker commit -a="yu" -m="tomcat1" tomcat1 tomcat1:02 #提交容器
exit #退出容器
docker ps#查看容器
docker run tomcat:02#运行提交的容器

数据卷容器

卷就是目录或文件,存在于一个或多个容器中,由docker挂载到容器,但不属于联合文件系统,因此能够绕过Union File System提供一些用于持续存储或共享数据的特性,卷的设计目的就是数据的持久化,完全独立于容器的生存周期,因此Docker不会在容器删除时删除其挂载的数据卷。数据卷可在容器之间共享或重用数据并且卷中的更改可以直接实时生效,数据卷的生命周期一直持续到没有容器使用它为止。


cc68e297772a4a2c8ce501134fa5615e.png

7fcb5dd3ec8f4f7ba88cdc5f4c6a4303.png

docker run  -v 镜像名#-v 主机目录:容器目录

mysql同步数据

docker run -d -p 3310:3306 -v /www/server/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql1 mysql:5.5

然后测试SQLyog连接远程服务器3310端口测试成功。然后在数据库中创建表test_q数据库

查看容器内部文件如图


82381a147f9e4d56a9886bdd84dcf16b.png

具名挂载和匿名挂载


具名挂载就是挂载的同时指定一个有具体含义的名字,方便后续和容器对应以及后续的运维,便于查找挂载目录,匿名挂载就是指定容器内路径,dockers run 每挂载一个目录就会宿主主机自动创建一个随机字符串的目录。目录/var/lib/docker/volumes/随机字符串。

docker run -d -p 8000:80  --name nginxtest -v /etc/nginx nginx #匿名挂载
docker run -d -p 8001:80  --name nginxtest02 -v nginxtest02:/etc/nginx nginx #具名挂载
docker volume ls#查看容器数据卷
相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
9月前
|
关系型数据库 MySQL 应用服务中间件
|
9月前
|
Linux Go Docker
Docker介绍(二)
Docker是基于Go语言的开源容器平台,利用Linux内核的namespace、cgroups和UnionFS等技术实现在Linux上运行。它分为社区版(Docker-CE)和企业版(Docker-EE),在CentOS上可安装Docker-CE。Docker的核心技术包括镜像,它是包含应用及环境的可执行文件,用于创建容器。常用镜像操作有搜索、查看、下载、删除、保存备份、导入、重命名和检查。
|
9月前
|
Java Linux 虚拟化
|
10月前
|
运维 监控 开发者
什么是docker
Docker
72 0
|
10月前
|
Linux 虚拟化 开发者
Docker(1)
Docker定义 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
|
Linux 应用服务中间件 nginx
Docker使用
Docker容器技术入门
117 0
|
Java Shell Linux
Docker使用总结
Docker使用总结
149 0
|
存储 关系型数据库 Linux
105.【Docker】(五)
105.【Docker】
100 0
|
运维 Java 应用服务中间件
|
NoSQL Java Linux

热门文章

最新文章