serverforge
v1.0.3
Published
A modern, interactive command-line tool for provisioning and configuring production-ready servers with ease.
Downloads
0
Readme
ServerForge CLI
A modern, interactive command-line tool for provisioning and configuring production-ready servers with ease.
Overview
ServerForge is a powerful, TypeScript-based CLI tool designed to streamline the setup and configuration of production servers. It breaks down the complex process of server provisioning into intuitive, interactive modules with beautiful terminal interfaces.
Features
- 🧙♂️ Interactive Wizard - Guided setup with intelligent defaults
- 🐳 Docker Integration - Seamless container management
- ☸️ Kubernetes Setup - Multiple distribution support (k3s, microk8s, minikube)
- 🗄️ Database Deployment - Both containerized and native options
- 🔧 Infrastructure as Code - Terraform and Ansible integration
- 🛠️ DevOps Utilities - Essential tools for modern operations
- 🔒 Security Hardening - Best-practice server security
- 🎨 Beautiful UI - Spinners, colors, and progress bars
Installation
# Install globally
npm install -g serverforge-cli
# Or run with npx
npx serverforge-cliQuick Start
# Launch the interactive wizard
serverforge wizard
# Or use specific commands
serverforge system update
serverforge docker install
serverforge kubernetes setup --distribution=k3sCommands
ServerForge organizes functionality into logical command groups:
System Commands
# Update system packages
serverforge system update
# Install essential tools
serverforge system install-essentials
# Configure firewall
serverforge system setup-firewallDocker Commands
# Install Docker and Docker Compose
serverforge docker install
# Set up container networks
serverforge docker network-setupKubernetes Commands
# Install Kubernetes
serverforge kubernetes install --distribution=<k3s|microk8s|minikube>
# Deploy ArgoCD
serverforge kubernetes deploy-argocdDatabase Commands
# Deploy databases as containers
serverforge database deploy-containers
# Deploy databases on Kubernetes
serverforge database deploy-kubernetesTerraform Commands
# Initialize Terraform modules
serverforge terraform init-modulesAnsible Commands
# Create Ansible playbooks
serverforge ansible create-playbooks
# Run system hardening playbook
serverforge ansible run-hardeningTools Commands
# Install DevOps utility tools
serverforge tools install-devops-suiteAdvanced Usage
ServerForge supports configuration files and environment variables for automation:
# Generate a config file
serverforge init --config=my-config.json
# Use a config file
serverforge wizard --config=my-config.jsonDocumentation
For full documentation, visit our documentation site.
Contributing
We welcome contributions! Please see CONTRIBUTING.md for details.
License
This project is licensed under the MIT License - see the LICENSE file for details.
