[0.1] Add scripts
This commit is contained in:
11
Dockerfile
Normal file
11
Dockerfile
Normal file
@@ -0,0 +1,11 @@
|
||||
FROM n8nio/runners:2.7.3
|
||||
|
||||
USER root
|
||||
|
||||
RUN cd /opt/runners/task-runner-javascript && pnpm add moment uuid
|
||||
|
||||
RUN cd /opt/runners/task-runner-python && uv pip install requests pillow
|
||||
|
||||
COPY n8n-task-runners.json /etc/n8n-task-runners.json
|
||||
|
||||
USER runner
|
||||
69
docker-compose.yml
Normal file
69
docker-compose.yml
Normal file
@@ -0,0 +1,69 @@
|
||||
services:
|
||||
n8n-postgres:
|
||||
image: postgres:latest
|
||||
container_name: postgres
|
||||
restart: always
|
||||
networks:
|
||||
- n8n-net
|
||||
environment:
|
||||
- POSTGRES_PASSWORD=mypassword
|
||||
ports:
|
||||
- "5432:5432"
|
||||
volumes:
|
||||
- postgres_data:/var/lib/postgresql
|
||||
|
||||
n8n:
|
||||
image: n8nio/n8n:2.7.3
|
||||
container_name: n8n
|
||||
restart: always
|
||||
networks:
|
||||
- n8n-net
|
||||
ports:
|
||||
- "5678:5678"
|
||||
environment:
|
||||
- GENERIC_TIMEZONE=Asia/Jakarta
|
||||
- TZ=Asia/Jakarta
|
||||
- N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true
|
||||
- N8N_RUNNERS_ENABLED=true
|
||||
- N8N_RUNNERS_MODE=external
|
||||
- N8N_RUNNERS_BROKER_LISTEN_ADDRESS=0.0.0.0
|
||||
- N8N_RUNNERS_AUTH_TOKEN=n8n-secret
|
||||
- N8N_NATIVE_PYTHON_RUNNER=true
|
||||
- N8N_COMMUNITY_PACKAGES_ENABLED=true
|
||||
- N8N_RUNNERS_EXTERNAL_ALLOW=pillow
|
||||
volumes:
|
||||
- n8n_data:/home/node/.n8n
|
||||
depends_on:
|
||||
- n8n-postgres
|
||||
|
||||
task-runners:
|
||||
build: .
|
||||
container_name: n8n-runners
|
||||
networks:
|
||||
- n8n-net
|
||||
environment:
|
||||
- N8N_RUNNERS_TASK_BROKER_URI=http://n8n:5679
|
||||
- N8N_RUNNERS_AUTH_TOKEN=n8n-secret
|
||||
depends_on:
|
||||
- n8n
|
||||
|
||||
stirling-pdf:
|
||||
image: stirlingtools/stirling-pdf:latest-ultra-lite
|
||||
container_name: stirling-pdf
|
||||
restart: always
|
||||
ports:
|
||||
- "8080:8080"
|
||||
networks:
|
||||
- n8n-net
|
||||
environment:
|
||||
- DONT_LOG_SENSITIVE_INFO=true
|
||||
|
||||
networks:
|
||||
n8n-net:
|
||||
driver: bridge
|
||||
|
||||
volumes:
|
||||
n8n_data:
|
||||
external: true
|
||||
postgres_data:
|
||||
external: true
|
||||
56
n8n-task-runners.json
Normal file
56
n8n-task-runners.json
Normal file
@@ -0,0 +1,56 @@
|
||||
{
|
||||
"task-runners": [
|
||||
{
|
||||
"runner-type": "javascript",
|
||||
"workdir": "/home/runner",
|
||||
"command": "/usr/local/bin/node",
|
||||
"args": [
|
||||
"--disallow-code-generation-from-strings",
|
||||
"--disable-proto=delete",
|
||||
"/opt/runners/task-runner-javascript/dist/start.js"
|
||||
],
|
||||
"health-check-server-port": "5681",
|
||||
"allowed-env": [
|
||||
"PATH",
|
||||
"GENERIC_TIMEZONE",
|
||||
"NODE_OPTIONS",
|
||||
"N8N_RUNNERS_AUTO_SHUTDOWN_TIMEOUT",
|
||||
"N8N_RUNNERS_TASK_TIMEOUT",
|
||||
"N8N_RUNNERS_MAX_CONCURRENCY",
|
||||
"N8N_SENTRY_DSN",
|
||||
"N8N_VERSION",
|
||||
"ENVIRONMENT",
|
||||
"DEPLOYMENT_NAME",
|
||||
"HOME"
|
||||
],
|
||||
"env-overrides": {
|
||||
"NODE_FUNCTION_ALLOW_BUILTIN": "crypto",
|
||||
"NODE_FUNCTION_ALLOW_EXTERNAL": "moment",
|
||||
"N8N_RUNNERS_HEALTH_CHECK_SERVER_HOST": "0.0.0.0"
|
||||
}
|
||||
},
|
||||
{
|
||||
"runner-type": "python",
|
||||
"workdir": "/home/runner",
|
||||
"command": "/opt/runners/task-runner-python/.venv/bin/python",
|
||||
"args": ["-m", "src.main"],
|
||||
"health-check-server-port": "5682",
|
||||
"allowed-env": [
|
||||
"PATH",
|
||||
"N8N_RUNNERS_LAUNCHER_LOG_LEVEL",
|
||||
"N8N_RUNNERS_AUTO_SHUTDOWN_TIMEOUT",
|
||||
"N8N_RUNNERS_TASK_TIMEOUT",
|
||||
"N8N_RUNNERS_MAX_CONCURRENCY",
|
||||
"N8N_SENTRY_DSN",
|
||||
"N8N_VERSION",
|
||||
"ENVIRONMENT",
|
||||
"DEPLOYMENT_NAME"
|
||||
],
|
||||
"env-overrides": {
|
||||
"PYTHONPATH": "/opt/runners/task-runner-python",
|
||||
"N8N_RUNNERS_STDLIB_ALLOW": "re,io,os,base64,json",
|
||||
"N8N_RUNNERS_EXTERNAL_ALLOW": "requests,pillow,PIL"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user