Unleashing the Power of Peanut: A Guide to Deploying Databases and Services

May 1, 2024 | Programming

Peanut Logo

Deploy Databases and Services Easily for Development and Testing Pipelines.

API Workflow Status UI Workflow Status Release Status Version 0.7.0 Go Report Card Documentation Status MIT License

What is Peanut?

Peanut is a remarkable tool that provides a REST API, an Admin Dashboard, and a command-line tool to help you deploy and configure commonly used services such as databases, message brokers, and caching tools. Peanut is particularly handy for development and testing pipelines where traditional mocking might not suffice.

Why Choose Peanut?

Picture this: if deploying services was like cooking a gourmet meal, traditional methods would feel like using a wild combination of ingredients without a recipe. Peanut, on the other hand, gives you a structured approach—like a well-designed meal plan—that simplifies the process, allowing you to focus on the end product rather than the logistics. It speeds up your workflow by using containerization with technologies like Docker to ensure that your services are running smoothly.

Supported Services

  • MySQL
  • MariaDB
  • PostgreSQL
  • Redis
  • Etcd
  • Grafana
  • Elasticsearch
  • MongoDB
  • Graphite
  • Prometheus
  • Zipkin
  • Memcached
  • Mailhog
  • Jaeger
  • RabbitMQ
  • Consul
  • Vault
  • Cassandra
  • Minio
  • Docker Registry
  • Ghost
  • Httpbin
  • Nagios
  • Etherpad

Running Peanut on Ubuntu

To get Peanut up and running on your Ubuntu system, simply execute the following bash script which installs everything you need:

bash <(curl -s https://raw.githubusercontent.com/Clivern/Peanut/main/deployment/linux/install.sh)

Once installed, you can retrieve your public IP address with:

curl https://ipinfo.io/ip

Peanut will be accessible on port 80, and its user interface will be available at your public IP. Modify the following configuration in etc/peanut/config.prod.yml to suit your public IP or hostname:

app:
  hostname: $PEANUT_API_HOSTNAME:-127.0.0.1

After adjusting configurations, restart Peanut:

systemctl restart peanut

Deploying Your First Service

Once Peanut is running, deploying a service like Redis can be done simply with:

curl -X POST http://$PUBLIC_IP/api/v1/service -d service:redis -H x-api-key: ~api~key~here~

Troubleshooting Tips

Running into issues with Peanut? Here are a few troubleshooting ideas:

  • Check if Docker is properly installed and running, as Peanut relies on this for containerization.
  • Ensure your firewall settings allow traffic on port 80 where Peanut runs.
  • Verify that your configuration files are correctly set, especially the hostname settings.
  • If you encounter API errors, double-check your API keys and request formats.
  • For further insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.

Final Words

At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.

Stay Informed with the Newest F(x) Insights and Blogs

Tech News and Blog Highlights, Straight to Your Inbox