DEV.co
Open-Source DevOps · Clivern

Peanut

Peanut is a lightweight tool for quickly spinning up databases, message brokers, and other services in containers for local development and testing. It provides a REST API, CLI, and web dashboard to manage ephemeral or persistent service instances without writing Docker Compose files.

Source: GitHub — github.com/Clivern/Peanut
726
GitHub stars
28
Forks
Go
Primary language
MIT
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
RepositoryClivern/Peanut
OwnerClivern
Primary languageGo
LicenseMIT — OSI-approved
Stars726
Forks28
Open issues25
Latest releasev0.7.0 (2023-02-23)
Last updated2026-07-07
Sourcehttps://github.com/Clivern/Peanut

What Peanut is

Go-based service provisioning layer that wraps Docker/docker-compose to deploy 23+ pre-configured services (MySQL, PostgreSQL, Redis, RabbitMQ, Elasticsearch, etc.). Uses etcd for state management, supports temporary auto-cleanup, metrics via Prometheus, and API-key authentication.

Quickstart

Get the Peanut source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/Clivern/Peanut.gitcd Peanut# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Automated test pipeline setup

Provision ephemeral database or message broker instances in CI/CD pipelines with auto-cleanup via deleteAfter parameter; avoids mocking where real service behavior is needed.

Multi-service local development

Engineers can quickly instantiate any of 23+ services (MySQL, Postgres, Redis, Jaeger, etc.) on demand without manual docker-compose or Helm manifests; dashboard shows live connection details.

Test-drive and manual QA environments

Spin up temporary service stacks for exploratory testing or demos; services auto-destroy after configured duration; useful for integration testing where multiple versions of the same service are needed.

Implementation considerations

  • Requires etcd cluster or single-node instance for state management; adds operational complexity if not already present in infrastructure.
  • Docker daemon must be running and accessible; binary installation on Linux involves manual etcd and Docker setup (no automated package managers like apt/yum support documented).
  • API authentication is API-key based (x-api-key header); no RBAC, OAuth, or mTLS mentioned. Protect the API endpoint and key distribution in production contexts.
  • Services are deployed as individual Docker containers with random ports; network isolation and firewall rules must be managed separately.
  • No documented upgrade path for existing service instances; upgrading Peanut itself requires stopping/restarting which may disrupt running services.

When to avoid it — and what to weigh

  • Production workloads — Latest release is v0.7.0 from Feb 2023; project shows activity but is not production-hardened. No mention of HA, backup/restore, or data persistence guarantees.
  • Complex multi-cluster orchestration — Single-node or small-team focused; requires etcd for coordination but no Kubernetes integration. Use Helm or Terraform for larger infrastructure.
  • Strict dependency on non-Docker runtimes — Only Docker/docker-compose supported as containerization driver. If you require Podman, containerd, or other runtimes, this tool does not support them.
  • Air-gapped or offline deployments — Relies on pulling Docker images at runtime; no offline image bundling or registry mirroring documented. Requires network access to Docker Hub or configured registry.

License & commercial use

MIT License (permissive OSI license). Allows commercial use, modification, and distribution with minimal restrictions; requires only attribution and inclusion of the license notice.

MIT is a permissive license compatible with commercial use and closed-source derivatives. No additional licensing agreements, support contracts, or per-seat fees are indicated in the provided data. Verify with maintainer if commercial support is needed.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceModerate
DocumentationAdequate
License clarityClear
Deployment complexityModerate
DEV.co fitGood
Assessment confidenceMedium
Security considerations

API uses static x-api-key authentication with no rate limiting mentioned; protect the API endpoint with network-level controls (firewall, reverse proxy). No encryption-at-rest for etcd documented. Container images pulled from Docker Hub without signature verification. No security audit history provided. Requires review before use with sensitive data.

Alternatives to consider

Docker Compose + bash scripts

Manual but fine-grained control; no additional tool overhead. Requires manually writing/versioning compose files; not suitable for dynamic provisioning.

Helm + Kubernetes

Production-grade orchestration with strong ecosystem; requires K8s cluster and steeper learning curve. Overkill for simple local dev/test but better for multi-team/multi-cloud scenarios.

Testcontainers (Java/Go/Python libraries)

Language-specific; integrates directly into test code and lifecycle; no separate service needed. Limited to services with library support; not suitable for non-code contexts like manual testing or pipelines.

Software development agency

Build on Peanut with DEV.co software developers

Deploy Peanut on a Linux machine or integrate into your CI/CD pipeline to provision services on demand. Start with the bash install script or download the binary.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

Peanut FAQ

Can I use Peanut to manage services across multiple machines?
Not directly documented. Peanut appears to assume single-node Docker; etcd can be clustered but no multi-node Peanut deployment guide is provided. Would require custom coordination logic.
What happens if Peanut crashes while services are running?
Services continue running in Docker; Peanut restarts and should reconnect to etcd to recover service state. Risk of orphaned containers if etcd state is lost.
Does Peanut support custom Docker images or only pre-configured ones?
Only 23 pre-configured services are listed in the README. Custom image support is not mentioned; would require modifying Peanut source code or contributing back.
How is data persisted for stateful services like PostgreSQL?
Not clearly documented. Assume Docker volumes are used but no explicit backup/restore mechanism or persistence configuration examples provided.

Software developers & web developers for hire

Need help beyond evaluating Peanut? DEV.co is a software development agency offering software development services and web development for teams of every size. Our software developers and web developers build custom software, web applications, APIs, and open-source devops integrations — and maintain them long-term.

Ready to streamline your dev environment?

Deploy Peanut on a Linux machine or integrate into your CI/CD pipeline to provision services on demand. Start with the bash install script or download the binary.