提交 c71a2aa9 authored 作者: 陈泽健's avatar 陈泽健

feat(server-check): 新增容器信息收集功能

- 实现 Test-ContainerInformation 函数用于收集服务器容器信息
- 支持 Docker 和 Podman 运行时检测与兼容
- 收集容器基本信息、状态、健康检查、重启策略等
- 获取容器网络设置、端口映射及挂载信息
- 在自检报告中新增容器信息展示模块
- 更新服务自检主流程以调用容器信息收集
- 优化日志导出函数中的条件判断逻辑
- 修复备份下载失败时的临时目录创建问题
- 调整 container_update.sh 中默认镜像版本至 v15
- 修改容器启动命令为完整写法以提升稳定性
- 更新需求文档中标记现场数据备份为已实现
- 在需求文档中新增容器信息收集与定时任务查询项
上级 0663da88
......@@ -204,7 +204,7 @@
2、数据库用户权限需要进入umysql容器内,数据库账号为root,密码为dNrprU&2S
注意:此检测函数需要在日志导出函数前执行,并且main主函数和日志记录函数都需要补充调用!将文件权限打印出来!
##### 现场数据备份(实现):
##### 现场数据备份(✅ 已实现):
函数名称:DataBakup
先判断目标服务器是新统一平台还是传统平台,再备份对应平台的服务包与配置文件等数据,最后在目标服务器上压缩成tar.gz格式文件导出到电脑上。
......@@ -223,5 +223,13 @@
2、数据库备份,账号为root,密码为dNrprU&2S,数据库容器是umysql容器,数据库是ubains和devops,数据库备份完成后也复制到/home/bakup目录下
最后将/home/bakup目录压缩成tar.gz格式文件并导出,文件命名补充时间戳,导出完成后清理/home目录下的这个备份文件。
##### 容器信息收集(待实现):
函数名称:Test-ContainerInformation
查询当前服务器上所有容器信息(包含未运行与运行中的信息),可以通过docker inspect来获取MAC地址、端口映射信息、启动文件位置。
信息打印排版:先打印运行中的容器信息,再打印未运行的容器信息。
##### 定时任务查询(待实现):
##### 服务自检报告输出(✅ 已实现):
将服务自检的所有操作步骤与结果输出到日志文件中!自检报告需要补充成md格式!
\ No newline at end of file
......@@ -1221,8 +1221,8 @@ python_oldplatform_x86() {
: "${sudoset:=}"
local container_name="${DEPLOY_CONTAINER_NAME:-upython}"
local image_tar="${DEPLOY_IMAGE_TAR:-/data/temp/python_v14.tar.gz}"
local image_name="139.9.60.86:5000/upython:v14"
local image_tar="${DEPLOY_IMAGE_TAR:-/data/temp/python_v15.tar.gz}"
local image_name="139.9.60.86:5000/upython:v15"
local host_html_dir="/var/www/html"
local container_start_cmd="/var/www/html/start.sh"
local mac_addr="02:42:ac:11:00:06"
......@@ -1265,16 +1265,7 @@ python_oldplatform_x86() {
fi
log "INFO" "🚀 正在启动 Python 容器: ${container_name}"
$sudoset docker run -d \
--name "${container_name}" \
--restart=always \
--mac-address="${mac_addr}" \
--privileged \
"${ports[@]}" \
-v "${host_html_dir}:/var/www/html" \
-v "/etc/localtime:/etc/localtime:ro" \
"${image_name}" \
"${container_start_cmd}"
$sudoset docker run -itd -p 8002:8002 -p 8000:8000 -p 8443:8443 -p 9009:9009 -v /var/www/html:/var/www/html -v /etc/localtime:/etc/localtime:ro --restart=always --mac-address="02:42:ac:11:00:06" --privileged --name=upython ${image_name} /var/www/html/start.sh
if [[ $? -ne 0 ]]; then
log "ERROR" "⛔ 容器启动失败"
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论