ain8n / run.sh
orztv
update
d57197c
raw
history blame
1.27 kB
#!/bin/bash
set -e
current_time=$(date +"%Y-%m-%d %H:%M:%S")
echo "Starting n8n at $current_time"
# 等待 PostgreSQL 就绪
wait_for_postgres() {
echo "Waiting for PostgreSQL to start..."
while ! nc -z ${DB_POSTGRESDB_HOST} ${DB_POSTGRESDB_PORT}; do
sleep 1
done
echo "PostgreSQL started"
}
wait_for_postgres
# 设置 N8N 环境变量
export N8N_ENCRYPTION_KEY="${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
# 设置文件权限
export N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true
# 使用绝对路径调用 n8n,添加日志输出
exec n8n start