npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

n8n-nodes-docker-api

v0.1.1

Published

Interact with Docker via direct API (no Portainer required) — manage containers, stream logs, and automate infrastructure workflows

Readme

n8n Docker Node

🐳 n8n-nodes-docker-api

npm License

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

  1. Install the node:
npm install n8n-nodes-docker-api
  1. Add Docker API credentials
  2. Add the Docker node to your workflow
  3. Choose an operation and execute

✅ No manual API calls needed


📦 Installation

Community Nodes (Recommended)

  1. Go to Settings → Community Nodes
  2. Install: n8n-nodes-docker-api

Manual Installation

npm install n8n-nodes-docker-api

🧪 Usage

Docker Node in n8n

Docker Node UI

  1. Add the Docker node

  2. Select an operation:

    • List Containers
    • Get Container Logs
    • Start Container
    • Stop Container
  3. Configure credentials

  4. Execute the node


Example: List Containers

  • Operation: List Containers

  • Optional filters:

    • Name
    • Status
    • Show all containers

🔐 Credentials

Credentials UI in n8n

Docker Credentials UI


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

⚠️ 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