A Droq node that executes Langflow components in isolated environments.
Recommended: Use the startup script
cd node
./start-local.shThis script will:
- Check for dependencies
- Start the executor node with auto-reload enabled
Manual startup:
# 1. Install dependencies (if needed)
cd node
uv sync
# 2. Run the executor
PYTHONPATH=src python -m node.main
# or with auto-reload (default in start-local.sh)
RELOAD=true PYTHONPATH=src python -m node.mainThe executor will run on http://localhost:8000 by default.
Buid and run the latest Langflow runtime node:
docker build -f Dockerfile -t lfx-runtime-executor-node:latest .
# Run the container
docker run -p 8000:8000 lfx-runtime-executor-node:latestExecute a Langflow component method.
Request:
{
"component_state": {
"component_class": "TextInput",
"component_module": "lfx.components.input_output.text_input",
"parameters": {
"input_value": "Hello World"
},
"config": {},
"display_name": "Text Input",
"component_id": "TextInput-abc123"
},
"method_name": "text_response",
"is_async": false,
"timeout": 30
}Response:
{
"result": {...},
"success": true,
"result_type": "Message",
"execution_time": 0.123,
"error": null
}Health check endpoint.
Service information.
HOST- Server host (default:0.0.0.0)PORT- Server port (default:8000)LOG_LEVEL- Logging level (default:INFO)RELOAD- Enable auto-reload for development (default:false)
The main droqflow backend calls this executor node from Component._get_output_result() when components need to execute. All components are now routed to the executor by default.
The Dockerfile is designed to be built from the repository root:
# From repo root
docker build -f node/Dockerfile -t lfx-runtime-executor-node:latest .This allows the Dockerfile to access both:
app/src/node/- Node source codenode/- Executor node source code
- Test locally with sample component execution
- Build Docker image
- Deploy executor node service
- Configure main backend to use executor node
Apache License 2.0