🔧 chore(.env): 移除Steam账户信息并添加MOD_IDS配置
- 删除敏感的环境变量注释 - 添加MOD_IDS配置用于mod管理 📦 build(Dockerfile): 添加mod更新脚本支持 - 添加updatemod.sh脚本文件 - 设置脚本执行权限 - 更新文件所有权配置 📝 docs(README): 添加MOD_IDS说明和mod更新指南 - 在环境变量表格中添加MOD_IDS说明 - 新增客户端mod更新操作指南 📦 build(docker-compose): 添加MOD_IDS环境变量支持 - 在docker-compose.yml中添加MOD_IDS环境变量配置
This commit is contained in:
54
DockerFile/updatemod.sh
Normal file
54
DockerFile/updatemod.sh
Normal file
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
|
||||
# DayZ Mod更新脚本
|
||||
# 使用方法: docker compose run --rm steamcmd updatemod
|
||||
|
||||
set -e
|
||||
|
||||
echo "=========================================="
|
||||
echo "开始更新DayZ Mod..."
|
||||
echo "时间: $(date)"
|
||||
echo "=========================================="
|
||||
|
||||
# 检查环境变量
|
||||
if [ -z "$STEAM_USERNAME" ] || [ -z "$STEAM_PASSWORD" ]; then
|
||||
echo "错误: 请设置 STEAM_USERNAME 和 STEAM_PASSWORD 环境变量"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 切换到SteamCMD目录
|
||||
cd /opt/steamcmd
|
||||
|
||||
# 检查SteamCMD是否已安装
|
||||
if [ ! -f "/opt/steamcmd/steamcmd.sh" ]; then
|
||||
echo "SteamCMD未安装,开始下载和安装..."
|
||||
wget -O /opt/steamcmd/steamcmd_linux.tar.gz ${STEAMCMD_URL}
|
||||
tar xvzf /opt/steamcmd/steamcmd_linux.tar.gz -C /opt/steamcmd
|
||||
rm /opt/steamcmd/steamcmd_linux.tar.gz
|
||||
chmod +x /opt/steamcmd/steamcmd.sh
|
||||
echo "SteamCMD安装完成!"
|
||||
fi
|
||||
|
||||
# 更新Mod(如果有配置的话)
|
||||
if [ -n "$MOD_IDS" ]; then
|
||||
echo "开始更新Mod..."
|
||||
IFS=',' read -ra MOD_ARRAY <<< "$MOD_IDS"
|
||||
|
||||
for mod_id in "${MOD_ARRAY[@]}"; do
|
||||
echo "更新Mod ID: $mod_id"
|
||||
./steamcmd.sh +login $STEAM_USERNAME $STEAM_PASSWORD +workshop_download_item 221100 $mod_id +quit
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "Mod $mod_id 更新完成"
|
||||
else
|
||||
echo "Mod $mod_id 更新失败"
|
||||
fi
|
||||
done
|
||||
else
|
||||
echo "未配置Mod ID,跳过Mod更新"
|
||||
fi
|
||||
|
||||
echo "=========================================="
|
||||
echo "Mod更新完成!"
|
||||
echo "时间: $(date)"
|
||||
echo "=========================================="
|
||||
Reference in New Issue
Block a user