微服务框架
【SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】
SpringCloud微服务架构
文章目录
- 微服务框架
- SpringCloud微服务架构
- 10 使用Docker
- 10.9 数据卷挂载案例2
- 10.9.1 直接开干
- 10.9.2 数据卷挂载的方式对比
- 10.9.3 总结
10 使用Docker
10.9 数据卷挂载案例2
10.9.1 直接开干
创建并运行一个MySQL容器,将宿主机目录【不一定是数据卷】直接挂载到容器
提示:目录挂载与数据卷挂载的语法是类似的:
- -v [宿主机目录]:[容器内目录]
- -v [宿主机文件]:[容器内文件]
实现思路如下:
-
在将课前资料中的mysql.tar文件上传到虚拟机,通过load命令加载为镜像
-
创建目录/tmp/mysql/data
-
创建目录/tmp/mysql/conf,将课前资料提供的hmy.cnf文件上传到/tmp/mysql/conf
-
去DockerHub查阅资料,创建并运行MySQL容器,要求:
①挂载/tmp/mysql/data到mysql容器内数据存储目录
②挂载/tmp/mysql/conf/hmy.cnf到mysql容器的配置文件
③设置MySQL密码

就是它了

直接拖到tmp 目录下【很离谱,笔者用的finalshell 非常慢】【当然也有可能是带宽限制,毕竟黑马老师用的是本地虚拟机,笔者用的是真的服务器】
试试xftp

等待上传完成

OK

加载镜像
docker load -i mysql.tar

OK,可以看到版本是5.7.25
创建两个目录
[root@dingjiaxiong tmp]# mkdir -p mysql/data [root@dingjiaxiong tmp]# mkdir -p mysql/conf


OK
上传配置文件到 conf 目录下

OK
【运行MySQL 容器】
查看官方文档:https://hub.docker.com/_/mysql

往下滑

小改一下
先看看容器中的配置目录

OK,数据目录

OK
所以总的启动容器命令:
docker run --name mysql -e MYSQL_ROOT_PASSWORD=200039 -p 3306:3306 -v /tmp/mysql/conf/hmy.cnf:/etc/mysql/conf.d/hmy.cnf -v /tmp/mysql/data:/var/lib/mysql -d mysql:5.7.25

OK
先开个端口

OK,看看现在的data 目录

OK
现在在本机上用Navicat 尝试连接

没毛病,之后就是使用了
10.9.2 数据卷挂载的方式对比

一个自动化但隐藏了细节,一个实现了细节但是是手动
10.9.3 总结
- docker run的命令中通过 -v 参数挂载文件或目录到容器中:
①-v volume名称:容器内目录
②-v 宿主机文件:容器内文件
③-v 宿主机目录:容器内目录
- 数据卷挂载与目录直接挂载的
①数据卷挂载耦合度低,由docker来管理目录,但是目录较深,不好找
②目录挂载耦合度高,需要我们自己管理目录,不过目录容易寻找查看
![[附源码]Python计算机毕业设计Django设备运维平台出入库模块APP](https://img-blog.csdnimg.cn/3094c3eaa44f4317a347f6c61d2e6f6c.png)

![[附源码]计算机毕业设计基于SpringBoot的玉石交易系统](https://img-blog.csdnimg.cn/68c6d1c3836b4923b8bc403688d15212.png)


![[附源码]计算机毕业设计点餐系统](https://img-blog.csdnimg.cn/50cae44d19f943daa93fa521c02914bd.png)







![[附源码]Python计算机毕业设计Django剧本杀交流分享平台](https://img-blog.csdnimg.cn/1ee4ea1a6ee94e42b29b506958efb976.png)




