n8n
From KlavoWiki
Jump to navigationJump to search
Docker
n8n:
image: n8nio/n8n:latest
container_name: n8n
restart: unless-stopped
user: "1000:1000"
ports:
- 5678:5678
environment:
- GENERIC_TIMEZONE=Australia/Brisbane
- N8N_BASIC_AUTH_ACTIVE=true
- N8N_BASIC_AUTH_USER=n8nuser
- N8N_BASIC_AUTH_PASSWORD=your_strong_password
- NODE_ENV=production
- N8N_SECURE_COOKIE=true
- N8N_EDITOR_BASE_URL=https://n8n.klaverstyn.com.au/
- WEBHOOK_URL=https://n8n.klaverstyn.com.au/
- N8N_RUNNERS_ENABLED=true
- N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true
- DB_TYPE=sqlite
- DB_SQLITE_VACUUM_ON_STARTUP=true
- N8N_METRICS=true
- N8N_DEFAULT_BINARY_DATA_MODE=filesystem
- EXECUTIONS_DATA_PRUNE=true
- EXECUTIONS_DATA_MAX_AGE=168
volumes:
- ~/n8n:/home/node/.n8n
nginx
server {
listen 10.13.13.242:80;
listen [2403:580a:e75f:1::242]:80;
server_name n8n.klaverstyn.com.au;
# Redirect all HTTP traffic to HTTPS
return 301 https://$host$request_uri;
access_log /var/log/nginx/access_n8n.log;
error_log /var/log/nginx/error_n8n.log;
}
server {
listen 10.13.13.242:443 ssl;
listen [2403:580a:e75f:1::242]:443 ssl;
http2 on;
server_name n8n.klaverstyn.com.au;
access_log /var/log/nginx/access_n8n.log;
error_log /var/log/nginx/error_n8n.log;
ssl_certificate /etc/letsencrypt/live/n8n.klaverstyn.com.au/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/n8n.klaverstyn.com.au/privkey.pem;
client_max_body_size 350M;
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-XSS-Protection "1; mode=block" always;
add_header Referrer-Policy "no-referrer-when-downgrade" always;
add_header Permissions-Policy "geolocation=(), camera=(), microphone=()" always;
if ($http_user_agent ~* (HTTrack|wget|curl|nikto|sqlmap)) {
return 403;
}
location / {
proxy_pass http://localhost:5678;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Ssl on;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}