diff --git a/DockerFile/Dockerfile b/DockerFile/Dockerfile index 8a049c9..faa6c54 100644 --- a/DockerFile/Dockerfile +++ b/DockerFile/Dockerfile @@ -18,7 +18,6 @@ RUN apt-get update && apt-get install -y \ libtinfo5 \ libvorbisfile3 \ lib32z1 \ - cron \ && rm -rf /var/lib/apt/lists/* RUN mkdir -p ${STEAMCMD_DIR} @@ -39,8 +38,6 @@ RUN chown -R steam:steam ${STEAMCMD_DIR} && \ chown steam:steam /opt/updatemod.sh && \ chown -R steam:steam /opt/games -RUN touch /etc/cron.d/updatemod - WORKDIR ${STEAMCMD_DIR} CMD ["/opt/start.sh"] \ No newline at end of file diff --git a/DockerFile/start.sh b/DockerFile/start.sh index 6b49a52..c75fa62 100644 --- a/DockerFile/start.sh +++ b/DockerFile/start.sh @@ -7,52 +7,6 @@ echo "SteamCMD容器启动中..." echo "时间: $(date)" echo "==========================================" -# 启动cron服务并设置crontab任务 -setup_crontab() { - # 检查是否启用自动更新 - if [ "${ENABLE_AUTO_UPDATE:-true}" != "true" ]; then - echo "自动更新已禁用 (ENABLE_AUTO_UPDATE=false)" - return - fi - - echo "设置crontab自动更新任务..." - - # 保存环境变量到/etc/environment文件(解决cron任务无法读取环境变量的问题) - echo "保存环境变量到/etc/environment..." - cat > /etc/environment << EOF -STEAM_USERNAME=${STEAM_USERNAME} -STEAM_PASSWORD=${STEAM_PASSWORD} -MOD_IDS=${MOD_IDS} -DAYZ_MISSIONS=${DAYZ_MISSIONS} -DAYZ_SERVER_PORT=${DAYZ_SERVER_PORT} -DAYZ_CPU_COUNT=${DAYZ_CPU_COUNT} -ENABLE_AUTO_UPDATE=${ENABLE_AUTO_UPDATE} -UPDATE_INTERVAL=${UPDATE_INTERVAL} -EOF - - # 启动cron服务 - service cron start - - # 创建日志目录 - mkdir -p /var/log - touch /var/log/updatemod.log - chmod 666 /var/log/updatemod.log - - # 获取更新间隔(默认15分钟) - local interval="${UPDATE_INTERVAL:-15}" - - # 设置crontab任务 - echo "*/$interval * * * * /opt/updatemod.sh >> /var/log/updatemod.log 2>&1" | crontab - - - # 验证crontab任务 - echo "当前crontab任务列表:" - crontab -l - - echo "crontab自动更新任务设置完成!" - echo "任务将每${interval}分钟自动运行一次 /opt/updatemod.sh" - echo "日志文件位置: /var/log/updatemod.log" -} - copy_files() { local mod_path=$1 local parent_path=$2 @@ -228,8 +182,6 @@ else echo "SteamCMD已存在,跳过安装" fi -# 设置crontab自动更新任务 -setup_crontab if [ ! -f "/root/Steam/steamapps/common/DayZServer/DayZServer" ]; then echo "DayZServer未安装,开始安装..."