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

fix(deploy): 更新ARM架构部署脚本中的镜像版本和路径配置

- 更新Java容器镜像从v6版本降级至v4版本,对应tar包版本从472调整为321
- 修改Python服务镜像标签从v16降至v15,离线包名称改为ARM适配版本
- 调整语音后端服务镜像配置,统一使用ARM架构Python基础镜像
- 移除iListen语音服务的完整部署逻辑,仅保留ARM架构不支持提示
- 更新无纸化服务离线包路径至统一临时目录结构
- 优化电子桌牌服务镜像命名规范,添加容器启动脚本挂载配置
上级 619c85df
...@@ -8,9 +8,9 @@ function java_arm() ...@@ -8,9 +8,9 @@ function java_arm()
# ------------------- 定义变量 ------------------- # ------------------- 定义变量 -------------------
local container_name="ujava2" local container_name="ujava2"
local image_tar="/data/temp/java1.8.0_472.tar.gz" local image_tar="/data/temp/java1.8.0_321.tar.gz"
local image_name="139.9.60.86:5000/ujava:v6" local image_name="139.9.60.86:5000/ujava:v4"
local image_id="a8ba5fa12b8e" local image_id="5772d73fd433"
# 主机目录映射 # 主机目录映射
local host_api="/data/services/api" local host_api="/data/services/api"
...@@ -117,8 +117,8 @@ function python_arm() { ...@@ -117,8 +117,8 @@ function python_arm() {
log "INFO" "==================================================================" log "INFO" "=================================================================="
# ------------------- 定义变量 ------------------- # ------------------- 定义变量 -------------------
local image_tar="/data/temp/python_v16.tar.gz" local image_tar="/data/temp/arm_python3.7.6.tar.gz"
local image_tag="139.9.60.86:5000/upython:v16" local image_tag="139.9.60.86:5000/python:v15"
local container_name="upython" local container_name="upython"
local host_api_dir="/data/services/api/python-cmdb" local host_api_dir="/data/services/api/python-cmdb"
local container_start_cmd="/var/www/html/start.sh" local container_start_cmd="/var/www/html/start.sh"
...@@ -312,9 +312,9 @@ function python_voice_arm() { ...@@ -312,9 +312,9 @@ function python_voice_arm() {
local service_name="Python 语音后端服务" local service_name="Python 语音后端服务"
local container_name="upython_voice" local container_name="upython_voice"
local image_tar="/data/offline_auto_unifiedPlatform/data/temp/uvoice3.tar.gz" local image_tar="/data/temp/arm_python3.7.6.tar.gz"
local source_image_id="2a69026b2899" local source_image_id="03db136c4184"
local target_image_tag="139.9.60.86:5000/upython:v13" local target_image_tag="139.9.60.86:5000/python:v15"
# ✅ 更新为实际的生产挂载路径 # ✅ 更新为实际的生产挂载路径
local mounts=( local mounts=(
...@@ -428,156 +428,11 @@ function python_voice_arm() { ...@@ -428,156 +428,11 @@ function python_voice_arm() {
# - 复制依赖库文件与程序 # - 复制依赖库文件与程序
# - 启动 iListen 服务 # - 启动 iListen 服务
# 依赖: # 依赖:
# - 离线包路径: /data/offline_auto_unifiedPlatform/data/temp/iFlyTrans_server_bag/ # - 离线包路径: /data/temp/iFlyTrans_server_bag/
# - 服务路径: /data/third_party/iFlyTrans/iflytek/iListen # - 服务路径: /data/third_party/iFlyTrans/iflytek/iListen
# ======================================== # ========================================
function iListen_arm() { function iListen_arm() {
local service_name="iListen 语音服务" log "INFO" "iListen引擎暂无arm架构版本!!!"
local source_bag="/data/offline_auto_unifiedPlatform/data/temp/iFlyTrans_server_bag"
local jdk_tar="jdk-8u361-linux-x64.tar.gz"
local deploy_path="/opt/deploy"
local java_install_dir="$deploy_path/java"
local jdk_home="$java_install_dir/jdk1.8.0_361"
local iflytek_home="/data/third_party/iFlyTrans/iflytek"
local lib64_dest="/usr/lib64"
local lib_dest="/usr/lib"
log "INFO" "=================================================="
log "INFO" "🚀 正在部署:$service_name"
log "INFO" " 源文件目录: $source_bag"
log "INFO" " 服务安装路径: $iflytek_home"
log "INFO" "=================================================="
# --- 1. 检查服务是否已部署(✅ 改为检查目录和脚本存在,而非 Java)---
local service_dir="$iflytek_home/iListen"
local restart_script="$service_dir/restart.sh"
if [[ -d "$service_dir" ]] && [[ -f "$restart_script" ]]; then
log "INFO" "✅ 检测到 $service_name 已部署,跳过安装,准备启动..."
cd "$service_dir" || {
log "ERROR" "❌ 无法进入服务目录: $service_dir"
return 1
}
log "INFO" "▶️ 正在启动 iListen 服务..."
nohup ./restart.sh > nohup.out 2>&1 &
sleep 10
if pgrep -f "iListen" > /dev/null; then
log "INFO" "✅ iListen 服务已启动(PID: $(pgrep -f iListen | head -n1))"
else
log "WARN" "⚠️ 服务启动但未检测到进程,请检查日志: $service_dir/nohup.out"
fi
log "INFO" "🎉 $service_name 部署成功!"
return 0
fi
# 2. 卸载旧版 OpenJDK(避免冲突)
log "INFO" "🔧 正在卸载旧版 OpenJDK..."
yum -y remove java-11-openjdk* > /dev/null 2>&1 || true
log "INFO" "✅ OpenJDK 卸载完成(如存在)"
# 3. 检查依赖文件是否存在
if [ ! -f "$source_bag/$jdk_tar" ]; then
log "ERROR" "❌ JDK 安装包不存在: $source_bag/$jdk_tar"
return 1
fi
if [ ! -d "$source_bag/lib" ] || [ ! -d "$source_bag/usrlib" ] || [ ! -d "$source_bag/iflytek" ]; then
log "ERROR" "❌ 源文件目录缺失,请检查: $source_bag"
return 1
fi
# 4. 创建部署目录
mkdir -p "$deploy_path" "$java_install_dir"
if [ $? -ne 0 ]; then
log "ERROR" "❌ 无法创建部署目录: $deploy_path"
return 1
fi
log "INFO" "✅ 创建部署目录: $deploy_path"
# 5. 复制并解压 JDK
log "INFO" "📦 复制 JDK 安装包..."
cp "$source_bag/$jdk_tar" "$deploy_path/"
cd "$deploy_path" || {
log "ERROR" "❌ 无法进入目录: $deploy_path"
return 1
}
log "INFO" "🗜️ 正在解压 JDK..."
tar -xzf "$jdk_tar" -C "$java_install_dir"
if [ $? -ne 0 ]; then
log "ERROR" "❌ JDK 解压失败,请检查压缩包完整性"
return 1
fi
log "INFO" "✅ JDK 解压完成: $jdk_home"
# 6. 配置 Java 环境变量(✅ 按你原来的方式,不做任何改动)
log "INFO" "🛠️ 配置 Java 环境变量..."
cat >> /etc/profile << 'EOF'
#set java environment
JAVA_HOME=$JAVA_HOME
CLASSPATH=.:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
EOF
# 替换占位符为实际路径
sed -i "s|\$JAVA_HOME|$jdk_home|g" /etc/profile
# 立即在当前会话中生效
export JAVA_HOME="$jdk_home"
export CLASSPATH=".:$JAVA_HOME/lib/tools.jar"
export PATH="$JAVA_HOME/bin:$PATH"
# 验证 Java 安装
if java -version >/dev/null 2>&1; then
log "INFO" "✅ Java 环境配置成功: $(java -version 2>&1 | head -n1)"
else
log "ERROR" "❌ Java 环境配置失败,请检查路径或权限"
return 1
fi
# 7. 复制库文件和程序
log "INFO" "📤 正在复制依赖库和程序文件..."
cp -r "$source_bag/lib/"* "$lib64_dest"/ && echo "✅ 已复制 lib → /usr/lib64"
cp -r "$source_bag/usrlib/"* "$lib_dest"/ && echo "✅ 已复制 usrlib → /usr/lib"
if [ -d "/iflytek" ]; then
rm -rf "/iflytek"
fi
cp -r "$source_bag/iflytek" / && echo "✅ 已复制 iflytek 主程序到根目录"
mkdir -p "$(dirname "$iflytek_home")"
if [ ! -L "$iflytek_home" ] && [ ! -d "$iflytek_home" ]; then
ln -s "/iflytek" "$iflytek_home"
echo "✅ 创建软链接: $iflytek_home → /iflytek"
fi
log "INFO" "✅ 所有文件复制完成"
# 8. 启动服务
log "INFO" "▶️ 正在启动 iListen 服务..."
cd "$iflytek_home/iListen" || {
log "ERROR" "❌ 无法进入服务目录: $iflytek_home/iListen"
return 1
}
nohup ./restart.sh > nohup.out 2>&1 &
sleep 2
if pgrep -f "iListen" > /dev/null; then
log "INFO" "✅ iListen 服务已启动(PID: $(pgrep -f iListen | head -n1))"
else
log "WARN" "⚠️ 服务启动但未检测到进程,建议检查日志: $iflytek_home/iListen/nohup.out"
fi
log "INFO" "🎉 $service_name 部署成功!"
return 0
} }
# 无纸化信令服务部署 # 无纸化信令服务部署
...@@ -588,7 +443,7 @@ function paperless_arm() { ...@@ -588,7 +443,7 @@ function paperless_arm() {
# --- 配置参数 --- # --- 配置参数 ---
local container_name="paperless" local container_name="paperless"
local image_tar="/data/offline_auto_unifiedPlatform/data/temp/paperless.tar" local image_tar="/data/temp/paperless-v1.tar.gz"
local image_tag="paperless:v1" local image_tag="paperless:v1"
local host_data_dir="/data/third_party/paperless" local host_data_dir="/data/third_party/paperless"
local start_script_host="$host_data_dir/start.sh" local start_script_host="$host_data_dir/start.sh"
...@@ -752,10 +607,12 @@ configure_firewall_for_9990() { ...@@ -752,10 +607,12 @@ configure_firewall_for_9990() {
function cardtable_arm() { function cardtable_arm() {
local service_name="电子桌牌服务 (cardtable)" local service_name="电子桌牌服务 (cardtable)"
local container_name="cardtable" local container_name="cardtable"
local image_tar="/data/offline_auto_unifiedPlatform/data/temp/uos-cardtable.tar" # 建议统一放 /data/temp local image_tar="/data/temp/arm-cardtable-v3.3.tar" # 建议统一放 /data/temp
local image_tag="uos-cardtable:v1" local image_tag="cardtable:v3.3"
local work_dir="/data/third_party/wifi-local" local work_dir="/data/third_party/wifi-local"
local db_dir="$work_dir/db" local db_dir="$work_dir/db"
local host_start_script="$work_dir/start.sh"
local container_start_script="/root/start.sh"
log "INFO" "==================================================================" log "INFO" "=================================================================="
log "INFO" "📦 正在部署:$service_name" log "INFO" "📦 正在部署:$service_name"
...@@ -825,6 +682,7 @@ function cardtable_arm() { ...@@ -825,6 +682,7 @@ function cardtable_arm() {
--network=host \ --network=host \
--restart=always \ --restart=always \
-v "$work_dir:/home/wifi-local" \ -v "$work_dir:/home/wifi-local" \
-v "$host_start_script":"$container_start_script" \
"$image_tag" \ "$image_tag" \
/root/start.sh /root/start.sh
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论