File size: 2,183 Bytes
bb03dac
 
 
 
 
 
 
 
 
 
 
 
 
 
e14c66e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
bb03dac
e14c66e
 
 
 
 
 
bb03dac
 
e14c66e
bb03dac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/bin/sh

# Hugging Face Spaces provides SPACE_HOST as an environment variable
# (e.g., your-username-your-space-name.hf.space).
# We must set WEBHOOK_URL for n8n to correctly generate public URLs for webhooks.
if [ -n "$SPACE_HOST" ]; then
  # Ensure the URL scheme is https as HF Spaces are served over HTTPS
  export WEBHOOK_URL="https://$(echo $SPACE_HOST)"
  echo "INFO: n8n WEBHOOK_URL automatically set to $WEBHOOK_URL"
else
  echo "WARNING: SPACE_HOST environment variable not set. WEBHOOK_URL may not be configured correctly for public access."
  echo "INFO: n8n will attempt to infer the WEBHOOK_URL, or you can set it manually via environment variables."
fi

# --- IMPORTANT: Encryption Key ---
# N8N_ENCRYPTION_KEY is crucial for securing your credentials.
# If not set, n8n auto-generates one. If this auto-generated key changes (e.g., on pod restart
# without persistent storage for the key itself), your previously saved credentials will be unreadable.
#
# YOU MUST SET N8N_ENCRYPTION_KEY as a SECRET in your Hugging Face Space settings
# for any production or sensitive data use.
# Generate a strong, random string for this key. E.g., using: openssl rand -hex 32
if [ -z "$N8N_ENCRYPTION_KEY" ]; then
  echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
  echo "!! WARNING: N8N_ENCRYPTION_KEY is NOT SET. n8n will auto-generate a temporary one.  !!"
  echo "!!          This is INSECURE for production and may lead to DATA LOSS of credentials. !!"
  echo "!!          Please set N8N_ENCRYPTION_KEY as a Secret in your Space settings.         !!"
  echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
fi

# Optional: Set other n8n environment variables here if needed,
# or preferably as Secrets in your Hugging Face Space settings.
# Example for basic authentication (use with caution, prefer SSO if possible):
# export N8N_BASIC_AUTH_ACTIVE=true
# export N8N_BASIC_AUTH_USER="your_username_secret"
# export N8N_BASIC_AUTH_PASSWORD="your_strong_password_secret"

echo "INFO: Starting n8n..."
# Execute the main n8n command. It will pick up all N8N_* environment variables.
exec n8n