Task runner 환경 변수
요약
메인 n8n 이미지와 달리, task runner 이미지에서는 시크릿에 대한 파일 기반 구성을 사용할 수 없습니다. Task runners는 Code 노드에서 정의된 코드를 실행합니다.
파일 기반 구성
메인 n8n 이미지와 달리, task runner 이미지에서는 시크릿에 대한 파일 기반 구성을 사용할 수 없습니다. 즉, _FILE 접미사가 추가된 변수는 인식되지 않습니다.
Task runners는 Code 노드에서 정의된 코드를 실행합니다.
n8n 인스턴스 환경 변수#
| 변수 | 타입 | 기본값 | 설명 |
|---|---|---|---|
N8N_RUNNERS_ENABLED |
Boolean | false |
Task runner 활성화 여부. |
N8N_RUNNERS_MODE |
Enum string: internal, external |
internal |
Task runner의 실행 방식. internal은 n8n이 task runner를 자식 프로세스로 실행합니다. external은 외부 오케스트레이터가 task runner를 실행합니다. |
N8N_RUNNERS_AUTH_TOKEN |
String | 랜덤 문자열 | Task runner가 n8n에 인증하기 위한 공유 시크릿. external 모드 사용 시 필수입니다. |
N8N_RUNNERS_BROKER_PORT |
Number | 5679 |
Task broker가 task runner 연결을 수신 대기하는 포트. |
N8N_RUNNERS_BROKER_LISTEN_ADDRESS |
String | 127.0.0.1 |
Task broker가 수신 대기하는 주소. |
N8N_RUNNERS_MAX_PAYLOAD |
Number | 1 073 741 824 |
Task broker와 task runner 간 통신의 최대 페이로드 크기(바이트). |
N8N_RUNNERS_MAX_OLD_SPACE_SIZE |
String | Task runner에 사용할 --max-old-space-size 옵션(MB 단위). 기본적으로 Node.js가 사용 가능한 메모리를 기반으로 설정합니다. |
|
N8N_RUNNERS_MAX_CONCURRENCY |
Number | 5 |
Task runner가 동시에 실행할 수 있는 최대 작업 수. |
N8N_RUNNERS_TASK_TIMEOUT |
Number | 300 |
작업이 실행될 수 있는 최대 시간(초). 이 시간을 초과하면 runner가 작업을 중지하고 재시작합니다. 이 값은 0보다 커야 합니다. |
N8N_RUNNERS_HEARTBEAT_INTERVAL |
Number | 30 |
Runner가 broker에 heartbeat를 전송해야 하는 간격(초). 지정된 시간 내에 heartbeat를 전송하지 않으면 작업이 중지되고 runner가 재시작됩니다. 이 값은 0보다 커야 합니다. |
N8N_RUNNERS_INSECURE_MODE |
Boolean | false |
Task runner의 모든 보안 조치 비활성화 여부. 안전하지 않은 JS 기능에 의존하는 모듈과의 호환성을 위한 옵션입니다. 프로덕션 환경에서는 권장하지 않습니다. |
N8N_RUNNERS_TASK_REQUEST_TIMEOUT |
Number | 20 |
작업 요청이 runner를 사용할 수 있을 때까지 대기할 수 있는 최대 시간(초). Runner를 사용할 수 없을 때 워크플로가 무한정 대기하는 것을 방지합니다. 0보다 커야 합니다. |
Task runner launcher 환경 변수#
| 변수 | 타입 | 기본값 | 설명 |
|---|---|---|---|
N8N_RUNNERS_LAUNCHER_LOG_LEVEL |
Enum string: debug, info, warn, error |
info |
표시할 로그 메시지 수준. |
N8N_RUNNERS_AUTH_TOKEN |
String | - | n8n에 인증하기 위한 공유 시크릿. |
N8N_RUNNERS_AUTO_SHUTDOWN_TIMEOUT |
Number | 15 |
유휴 상태의 runner를 종료하기 전 대기 시간(초). |
N8N_RUNNERS_TASK_BROKER_URI |
String | http://127.0.0.1:5679 |
Task broker 서버(n8n 인스턴스)의 URI. |
N8N_RUNNERS_LAUNCHER_HEALTH_CHECK_PORT |
Number | 5680 |
Launcher의 헬스 체크 서버 포트. |
N8N_RUNNERS_MAX_PAYLOAD |
Number | 1 073 741 824 |
Task broker와 task runner 간 통신의 최대 페이로드 크기(바이트). |
N8N_RUNNERS_MAX_CONCURRENCY |
Number | 5 |
Task runner가 동시에 실행할 수 있는 최대 작업 수. |
Task runner 환경 변수 (모든 언어)#
| 변수 | 타입 | 기본값 | 설명 |
|---|---|---|---|
N8N_RUNNERS_GRANT_TOKEN |
String | 랜덤 문자열 | Runner가 task broker에 인증하기 위한 토큰. Launcher가 자동으로 제공합니다. |
N8N_RUNNERS_AUTO_SHUTDOWN_TIMEOUT |
Number | 15 |
유휴 상태의 runner를 종료하기 전 대기 시간(초). |
N8N_RUNNERS_TASK_BROKER_URI |
String | http://127.0.0.1:5679 |
Task broker 서버(n8n 인스턴스)의 URI. |
N8N_RUNNERS_LAUNCHER_HEALTH_CHECK_PORT |
Number | 5680 |
Launcher의 헬스 체크 서버 포트. |
N8N_RUNNERS_MAX_PAYLOAD |
Number | 1 073 741 824 |
Task broker와 task runner 간 통신의 최대 페이로드 크기(바이트). |
N8N_RUNNERS_MAX_CONCURRENCY |
Number | 5 |
Task runner가 동시에 실행할 수 있는 최대 작업 수. |
Task runner 환경 변수 (JavaScript)#
| 변수 | 타입 | 기본값 | 설명 |
|---|---|---|---|
NODE_FUNCTION_ALLOW_BUILTIN |
String | - | Code 노드에서 사용자가 특정 내장 모듈을 import할 수 있도록 허용합니다. *을 사용하면 모두 허용합니다. n8n은 기본적으로 모듈 import를 비활성화합니다. |
NODE_FUNCTION_ALLOW_EXTERNAL |
String | - | Code 노드에서 사용자가 특정 외부 모듈(n8n/node_modules에서)을 import할 수 있도록 허용합니다. n8n은 기본적으로 모듈 import를 비활성화합니다. |
N8N_RUNNERS_ALLOW_PROTOTYPE_MUTATION |
Boolean | false |
외부 라이브러리의 prototype 변형 허용 여부. 런타임 prototype 변형에 의존하는 모듈(예: puppeteer)을 허용하려면 true로 설정하세요. 보안이 완화됩니다. |
GENERIC_TIMEZONE |
* | America/New_York |
n8n 인스턴스에 구성된 것과 동일한 기본 타임존. |
NODE_OPTIONS |
String | - | Node.js의 옵션. |
N8N_RUNNERS_MAX_OLD_SPACE_SIZE |
String | Task runner에 사용할 --max-old-space-size 옵션(MB 단위). 기본적으로 Node.js가 사용 가능한 메모리를 기반으로 설정합니다. |
Task runner 환경 변수 (Python)#
| 변수 | 타입 | 기본값 | 설명 |
|---|---|---|---|
N8N_RUNNERS_STDLIB_ALLOW |
String | - | Code 노드에서 사용할 수 있는 Python 표준 라이브러리 모듈(서브모듈 포함). *을 사용하면 모든 stdlib 모듈을 허용합니다. n8n은 기본적으로 모든 Python 표준 라이브러리 import를 비활성화합니다. |
N8N_RUNNERS_EXTERNAL_ALLOW |
String | - | Code 노드에서 사용할 수 있는 서드파티 Python 모듈(서브모듈 포함). *을 사용하면 모든 외부 모듈을 허용합니다. n8n은 기본적으로 모든 서드파티 Python 모듈을 비활성화합니다. 서드파티 Python 모듈은 n8nio/runners 이미지에 포함되어 있어야 합니다. |
N8N_RUNNERS_BUILTINS_DENY |
String | eval,exec,compile,open,input,breakpoint,getattr,object,type,vars,setattr,delattr,hasattr,dir,memoryview,__build_class__,globals,locals |
Code 노드에서 사용할 수 없는 Python 내장 함수. 모든 내장 함수를 허용하려면 빈 문자열로 설정하세요. |
N8N_BLOCK_RUNNER_ENV_ACCESS |
Boolean | true |
Python 코드 작업 내에서 runner 환경에 대한 접근 차단 여부. false로 설정하면 모든 Python Code 노드 사용자가 os.environ을 통해 runner 환경에 접근할 수 있습니다. 보안상의 이유로 기본적으로 환경 변수 접근은 차단됩니다. |
