aiflow / run.sh
aigenai's picture
Update run.sh
f991908 verified
#!/bin/bash
WEBDAV_URL="$WEBDAV_URL"
WEBDAV_USER="$WEBDAV_USER"
WEBDAV_PASSWORD="$WEBDAV_PASSWORD"
current_time=$(date +"%Y-%m-%d %H:%M:%S")
# LOG_FILE="${WORKDIR}/buildlog.txt"
# 启动 PostgreSQL 服务
/usr/local/bin/docker-entrypoint.sh postgres &
# 检查 PostgreSQL 服务是否已启动
echo "等待 PostgreSQL 服务启动..."
until pg_isready -h localhost; do
sleep 3
done
echo "PostgreSQL 服务已启动!"
# 执行数据库导入脚本
echo "运行数据库导入脚本..."
${WORKDIR}/import-db.sh
# 设置 N8N 环境变量
export N8N_ENCRYPTION_KEY="n8n8n8n"
# 允许使用所有内建模块
export NODE_FUNCTION_ALLOW_BUILTIN=*
# 允许使用外部 npm 模块
export NODE_FUNCTION_ALLOW_EXTERNAL=*
# Activate automatic data pruning
export EXECUTIONS_DATA_PRUNE=true
# Number of hours after execution that n8n deletes data
export EXECUTIONS_DATA_MAX_AGE=36
# Number of executions to store
export EXECUTIONS_DATA_PRUNE_MAX_COUNT=1000
# Save executions ending in errors
export EXECUTIONS_DATA_SAVE_ON_ERROR=all
# Save successful executions
export EXECUTIONS_DATA_SAVE_ON_SUCCESS=all
# Don't save node progress for each execution
export EXECUTIONS_DATA_SAVE_ON_PROGRESS=false
# Don't save manually launched executions
export EXECUTIONS_DATA_SAVE_MANUAL_EXECUTIONS=false
# echo "检查 ${WEBDAV_URL}buildlog.txt 是否存在"
# if curl -u "$WEBDAV_USER:$WEBDAV_PASSWORD" -f -o "$LOG_FILE" "${WEBDAV_URL}buildlog.txt"; then
# echo "日志文件下载成功并写入部署时间: ${LOG_FILE}"
# echo "hf部署时间: ${current_time}" >> "${LOG_FILE}"
# else
# echo "WebDAV 上日志文件不存在,创建新的日志文件: ${LOG_FILE}"
# touch "${LOG_FILE}"
# echo "hf部署时间: ${current_time}" >> "${LOG_FILE}"
# fi
# 使用绝对路径调用 n8n
n8n > /dev/null 2>&1