项目开发之Docker-实操

时间:2024-12-06 19:44:43

1 windows11 docker mysql

参考博客1:https://blog.****.net/nmajsjpy/article/details/130183104
参考博客2:https://blog.****.net/joeyoj/article/details/136427362

2 docker部署 xxljob

见博客中XXL-Job文档中的《本地配置XXL-JOB》。

3 container间调用异常问题

描述:
可以打开xxl-job网页,但是没有办法登录;
网址是:http://127.0.0.1:9056/xxl-job-admin/toLogin
无法实现登录

分析:
数据库连接出现问题,原因是项目中配置的数据库账号密码与本地的不相同,但是镜像中的xxl-job又不能进行修改,所以需要重新搭建匹配xxl-job的mysql数据库;
下载xxl-job项目代码,按照properties配置文件定义mysql;

总结:
xxl-job和mysql分别都属于不同的contains,这样不能实现xxl-job项目调用mysql数据库,可以本地电脑运行xxl-job项目,调用docker中的数据库;

4 部署mysql数据库

具体步骤:

1. 通过desktop docker运行数据库的contains
2. 进入该contains
docer ps // 显示正在运行的contains
docker cp D:\...\xxx.sql mysql1:xxx.sql // 拷贝sql脚本文件到容器
docker exec -it 容器名 /bin/bash // 进入该容器
3. 操作数据库
mysql -u用户名 -p密码 // 登录数据库
show databases; // 查看现有数据库
create database xxx; // 创建xxx数据库
select database(); // 查看当前所在数据库是哪个
source xxx.sql // 执行sql脚本

5 docker desktop unexpected wsl error

参考:
	https://blog.****.net/u011807844/article/details/133308920 不行
	https://blog.****.net/Demoo26/article/details/136286606 不行
	https://blog.****.net/2201_75921737/article/details/139288092  可行

操作:
	win+R 输入services.msc找Hyper开头的所有内容;
	Hyper-V Data Exchange Service = 提供一种机制,用于在虚拟机和运行在物理计算机上的操作系统之间交换数据。
	Hyper-V Guest ServiceI nterface =Hyper-V 主机提供一个接口,以便与虚拟机内运行的特定服务进行交互。
	Hyper-V Guest Shutdown Service = 提供一种机制,用于从物理计算机上的管理界面关闭此虚拟机的操作系统。
	Hyper-V Heartbeat Service = 通过定期报告检测信号来监视此虚拟机的状态。此服务有助于你识别哪些运行的虚拟机已停止响应。
	Hyper-V PowerShell DirectService = 提供了一种在不使用虚拟网络的情况下,通过 VM 会话使用PowerShell 管理虚拟机的机制。
	Hyper-V Time Synchronization Service = 将此虚拟机的系统时间与物理计算机的系统时间同步。
	Hyper-V 卷影复制请求程序 = 协调使用卷影复制服务所需的通讯,以从物理计算机上的操作系统备份此虚拟机上的应用程序和数据。
	Hyper-V 远程桌面虚拟化服务 = 提供一个平台以在虚拟机和物理计算机上运行的操作系统之间进行通信。
	Hyper-V 主机计算服务 = 为运行的 Windows 容器和虚拟机提供支持。
	
	wsl --status   // 查看wsl状态
总结:
	通过修改开启启动项,将WSLService添加到开机启动项。