Package Information
Available Nodes
Documentation generatingβ¦
Documentation

π³ n8n-nodes-docker-api
Interact with Docker via direct API (no Portainer required) β manage containers, stream logs, and automate infrastructure with ease.
β¨ Why this node?
Managing Docker via raw HTTP calls in n8n is painful and error-prone.
This node gives you:
- π Clean container listing (normalized output)
- π Readable logs (stdout/stderr separated, no binary noise)
- β‘ Simple control (start/stop containers safely)
- π Built-in access control (read-only vs full control)
π Turn Docker into a first-class automation tool inside n8n
π Quick Start
- Install the node:
npm install n8n-nodes-docker-api
- Add Docker API credentials
- Add the Docker node to your workflow
- Choose an operation and execute
β No manual API calls needed
π¦ Installation
Community Nodes (Recommended)
- Go to Settings β Community Nodes
- Install:
n8n-nodes-docker-api
Manual Installation
npm install n8n-nodes-docker-api
π§ͺ Usage
Docker Node in n8n

Add the Docker node
Select an operation:
- List Containers
- Get Container Logs
- Start Container
- Stop Container
Configure credentials
Execute the node
Example: List Containers
Operation:
List ContainersOptional filters:
- Name
- Status
- Show all containers
π Credentials
Credentials UI in n8n

Connection Modes
π’ Unix Socket (Local)
- Default for local Docker setups
- Path:
/var/run/docker.sock
π TCP (Remote)
Connect to remote Docker daemon
Example:
- Host:
192.168.1.10 - Port:
2375
- Host:
β οΈ Requires Docker daemon configured with:
-H tcp://0.0.0.0:2375
π TLS (Coming in v2)
- Secure remote connection using certificates
Access Modes
π‘ Read Only (Recommended)
- β List containers
- β Get logs
- β Cannot start/stop containers
π΄ Full Control
- β All operations enabled
π Supported Operations (v1)
| Operation | Description | Access |
|---|---|---|
| List Containers | Get containers with normalized output | Read Only |
| Get Container Logs | Logs with stream filtering & timestamps | Read Only |
| Start Container | Start stopped containers | Full Control |
| Stop Container | Stop running containers (with dry run) | Full Control |
π₯ Real Use Cases
β»οΈ Self-Healing Containers
Automatically restart crashed services:
List Containers β IF (status != running) β Start Container
π¨ Log-Based Alerting
Detect errors and notify:
Get Logs β Search "ERROR" β Send Slack alert
π Container Monitoring
Track system health:
Schedule β List Containers β Aggregate β Report
π§ Output Examples
List Containers
{
"id": "3025272c7592...",
"shortId": "3025272c7592",
"name": "qdrant",
"image": "qdrant/qdrant",
"status": "running",
"createdAt": "2026-03-13T23:19:38.000Z"
}
Logs
{
"message": "Server started",
"stream": "stdout"
}
π Security
β οΈ Docker access = host-level control
Best Practices
Use Read Only mode unless needed
Avoid exposing Docker over public TCP
Use a proxy like:
tecnativa/docker-socket-proxy
Restrict network access
π§ͺ Testing
npm test
πΊοΈ Roadmap
v2
- Restart Container
- Remove Container
- Image operations (list/pull/remove)
- TLS support
- Container autocomplete
v3
- Run container (ephemeral jobs)
- Execute commands in container
- Container stats
v4
- Docker Trigger node (events)
β Contributing
PRs and ideas are welcome β especially for new operations and improvements.
π License
MIT
π¬ Support
Open an issue on GitHub for:
- Bugs
- Feature requests
- Questions