You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openserverless.apache.org by "default2368 (via GitHub)" <gi...@apache.org> on 2025/10/26 07:50:24 UTC
[PR] add OVERVIVIEW.md - quick cli guide, system architeture - [openserverless]
default2368 opened a new pull request, #177:
URL: https://github.com/apache/openserverless/pull/177
<!-- Please make sure you have read and understood the contributing guidelines -->
- [x] I have registered the PR [changes](../changes).
### Ⅰ. Describe what this PR did
Added comprehensive documentation for OpenServerless covering:
- Complete installation and setup guide (prerequisites, system requirements, installation steps)
- Development environment configuration (WSL2, Docker, Kubernetes)
- Nuvolaris CLI usage and commands
- Deployment workflows and best practices
- Troubleshooting common issues
- Architecture overview and key concepts
### Ⅱ. Does this pull request fix one issue?
No, this PR improves documentation by adding comprehensive guides for developers.
### Ⅲ. Why don't you add test cases (unit test/integration test)?
No tests needed as this is a documentation-only contribution. The documentation has been verified for technical accuracy and completeness.
### Ⅳ. Describe how to verify it
1. Review the documentation files for technical accuracy
2. Check that all code examples are correct and follow best practices
3. Verify that links and references are working
4. Test any command examples provided in the guides
### Ⅴ. Special notes for reviews
- All technical commands and configurations have been tested
- Follows the existing documentation structure and style
- Ready for review by maintainers
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: dev-unsubscribe@openserverless.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] add OVERVIEW.md - quick cli guide, system architeture - [openserverless]
Posted by "sciabarracom (via GitHub)" <gi...@apache.org>.
sciabarracom commented on PR #177:
URL: https://github.com/apache/openserverless/pull/177#issuecomment-3508553451
I have to close this PR as it looks AI generated and pretty inaccurate.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: dev-unsubscribe@openserverless.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] add OVERVIEW.md - quick cli guide, system architeture - [openserverless]
Posted by "default2368 (via GitHub)" <gi...@apache.org>.
default2368 commented on code in PR #177:
URL: https://github.com/apache/openserverless/pull/177#discussion_r2478914966
##########
OVERVIEW.md:
##########
@@ -0,0 +1,734 @@
+# System Architecture - Kubectl-Ops Cli Guide
+
+## Table of Contents
+1. [Introduction](#introduction)
+2. [System Architecture](#architecture)
+3. [Components and Tools](#components)
+4. [Installation and Setup](#installation)
+5. [User Management](#user-management)
+6. [Daily Operations](#operations)
+7. [Troubleshooting](#troubleshooting)
+
+---
+
+## 1. Introduction {#introduction}
+
+**OpenServerless** is an open source platform for serverless computing that offers a flexible and portable alternative to proprietary cloud provider solutions (AWS Lambda, Azure Functions, Google Cloud Functions).
+
+### Key Features
+- **Fully Open Source**: Completely open and modifiable code
+- **Portability**: Avoids vendor lock-in, deploy anywhere
+- **Kubernetes-Based**: Leverages the cloud-native ecosystem
+- **Self-Hosted**: Complete control over data and infrastructure
+- **Multi-Runtime Compatibility**: Supports multiple programming languages
+
+---
+
+## 2. System Architecture {#architecture}
+
+### Technology Stack
+
+```
+┌─────────────────────────────────────────┐
+│ CLI Tools (ops, kubectl) │
+│ User Interface │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Docker Desktop │
+│ (Container Runtime + Kubernetes) │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Kubernetes Cluster │
+│ • Container Orchestration │
+│ • Resource Management │
+│ • Networking and Storage │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ OpenServerless Platform │
+│ • Controller │
+│ • API Gateway │
+│ • Function Runtime │
+│ • Database (CouchDB) │
+│ • Optional: Redis, MongoDB, MinIO │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Exposed Services │
+│ • REST API │
+│ • Web UI │
+│ • Authentication │
+└─────────────────────────────────────────┘
+```
+
+### Dependency Flow
+
+**Without Docker Desktop:**
+- ❌ Kubernetes unavailable
+- ❌ OpenServerless cannot start
+- ❌ REST APIs inaccessible
+- ❌ Web UI not working
+- ✅ Only CLI tools available (local commands)
+
+**With Docker Desktop Active:**
+- ✅ Kubernetes operational
+- ✅ OpenServerless deployed
+- ✅ REST APIs available
+- ✅ Web UI accessible
+- ✅ Authentication working
+
+---
+
+## 3. Components and Tools {#components}
+
+### kubectl
+
+**What it does:**
+- Command-line client for Kubernetes
+- Manages native K8s resources (pods, services, secrets, namespaces)
+- Operates at **low infrastructure level**
+
+**Essential Commands:**
Review Comment:
Hello, this is the quick guide that we spoken some days ago, i'm enzonav
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: dev-unsubscribe@openserverless.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] add OVERVIEW.md - quick cli guide, system architeture - [openserverless]
Posted by "sciabarracom (via GitHub)" <gi...@apache.org>.
sciabarracom commented on code in PR #177:
URL: https://github.com/apache/openserverless/pull/177#discussion_r2477831844
##########
OVERVIEW.md:
##########
@@ -0,0 +1,734 @@
+# System Architecture - Kubectl-Ops Cli Guide
+
+## Table of Contents
+1. [Introduction](#introduction)
+2. [System Architecture](#architecture)
+3. [Components and Tools](#components)
+4. [Installation and Setup](#installation)
+5. [User Management](#user-management)
+6. [Daily Operations](#operations)
+7. [Troubleshooting](#troubleshooting)
+
+---
+
+## 1. Introduction {#introduction}
+
+**OpenServerless** is an open source platform for serverless computing that offers a flexible and portable alternative to proprietary cloud provider solutions (AWS Lambda, Azure Functions, Google Cloud Functions).
+
+### Key Features
+- **Fully Open Source**: Completely open and modifiable code
+- **Portability**: Avoids vendor lock-in, deploy anywhere
+- **Kubernetes-Based**: Leverages the cloud-native ecosystem
+- **Self-Hosted**: Complete control over data and infrastructure
+- **Multi-Runtime Compatibility**: Supports multiple programming languages
+
+---
+
+## 2. System Architecture {#architecture}
+
+### Technology Stack
+
+```
+┌─────────────────────────────────────────┐
+│ CLI Tools (ops, kubectl) │
+│ User Interface │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Docker Desktop │
+│ (Container Runtime + Kubernetes) │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Kubernetes Cluster │
+│ • Container Orchestration │
+│ • Resource Management │
+│ • Networking and Storage │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ OpenServerless Platform │
+│ • Controller │
+│ • API Gateway │
+│ • Function Runtime │
+│ • Database (CouchDB) │
+│ • Optional: Redis, MongoDB, MinIO │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Exposed Services │
+│ • REST API │
+│ • Web UI │
+│ • Authentication │
+└─────────────────────────────────────────┘
+```
+
+### Dependency Flow
+
+**Without Docker Desktop:**
+- ❌ Kubernetes unavailable
+- ❌ OpenServerless cannot start
+- ❌ REST APIs inaccessible
+- ❌ Web UI not working
+- ✅ Only CLI tools available (local commands)
+
+**With Docker Desktop Active:**
+- ✅ Kubernetes operational
+- ✅ OpenServerless deployed
+- ✅ REST APIs available
+- ✅ Web UI accessible
+- ✅ Authentication working
+
+---
+
+## 3. Components and Tools {#components}
+
+### kubectl
+
+**What it does:**
+- Command-line client for Kubernetes
+- Manages native K8s resources (pods, services, secrets, namespaces)
+- Operates at **low infrastructure level**
+
+**Essential Commands:**
Review Comment:
do not expose kubectl also because it is actually hidden inside ops - we have a full set of ops debug utils
##########
OVERVIEW.md:
##########
@@ -0,0 +1,734 @@
+# System Architecture - Kubectl-Ops Cli Guide
+
+## Table of Contents
+1. [Introduction](#introduction)
+2. [System Architecture](#architecture)
+3. [Components and Tools](#components)
+4. [Installation and Setup](#installation)
+5. [User Management](#user-management)
+6. [Daily Operations](#operations)
+7. [Troubleshooting](#troubleshooting)
+
+---
+
+## 1. Introduction {#introduction}
+
+**OpenServerless** is an open source platform for serverless computing that offers a flexible and portable alternative to proprietary cloud provider solutions (AWS Lambda, Azure Functions, Google Cloud Functions).
+
+### Key Features
+- **Fully Open Source**: Completely open and modifiable code
+- **Portability**: Avoids vendor lock-in, deploy anywhere
+- **Kubernetes-Based**: Leverages the cloud-native ecosystem
+- **Self-Hosted**: Complete control over data and infrastructure
+- **Multi-Runtime Compatibility**: Supports multiple programming languages
+
+---
+
+## 2. System Architecture {#architecture}
+
+### Technology Stack
+
+```
+┌─────────────────────────────────────────┐
+│ CLI Tools (ops, kubectl) │
+│ User Interface │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Docker Desktop │
+│ (Container Runtime + Kubernetes) │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Kubernetes Cluster │
+│ • Container Orchestration │
+│ • Resource Management │
+│ • Networking and Storage │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ OpenServerless Platform │
+│ • Controller │
+│ • API Gateway │
+│ • Function Runtime │
+│ • Database (CouchDB) │
+│ • Optional: Redis, MongoDB, MinIO │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Exposed Services │
+│ • REST API │
+│ • Web UI │
+│ • Authentication │
+└─────────────────────────────────────────┘
+```
+
+### Dependency Flow
+
+**Without Docker Desktop:**
+- ❌ Kubernetes unavailable
+- ❌ OpenServerless cannot start
+- ❌ REST APIs inaccessible
+- ❌ Web UI not working
+- ✅ Only CLI tools available (local commands)
+
+**With Docker Desktop Active:**
+- ✅ Kubernetes operational
+- ✅ OpenServerless deployed
+- ✅ REST APIs available
+- ✅ Web UI accessible
+- ✅ Authentication working
+
+---
+
+## 3. Components and Tools {#components}
+
+### kubectl
+
+**What it does:**
+- Command-line client for Kubernetes
+- Manages native K8s resources (pods, services, secrets, namespaces)
+- Operates at **low infrastructure level**
+
+**Essential Commands:**
+
+```bash
+# Check cluster status
+kubectl get nodes
+
+# List namespaces
+kubectl get namespaces
+
+# View all pods
+kubectl get pods --all-namespaces
+
+# View resources in a specific namespace
+kubectl get all -n <namespace>
+
+# View secrets
+kubectl get secrets -n <namespace>
+
+# View pod logs
+kubectl logs <pod-name> -n <namespace>
+
+# Edit a resource
+kubectl edit secret <secret-name> -n <namespace>
+
+# kubectl configuration
+kubectl config view
+kubectl config current-context
+kubectl config get-contexts
+```
+
+### ops CLI
+
+**What it does:**
+- OpenServerless-specific CLI
+- Simplifies complex operations
+- Operates at **high application level**
+- Uses kubectl behind the scenes
+
+**Essential Commands:**
+
+```bash
+# CLI information
+ops -version
+ops -info
+ops -help
+ops -tasks
+
+# Setup and configuration
+ops setup prereq # Validate prerequisites
+ops setup cluster # Deploy on existing cluster
+ops setup devcluster # Create local dev cluster
+ops setup mini # Deploy slim version
+ops setup status # Check status
+ops setup uninstall # Uninstall
+
+# Configuration
+ops -config # Manage configuration
+
+# Authentication
+ops -login <apihost> <username>
+
+# User management (admin)
+ops admin adduser <username> <email> <password> [options]
+ops admin deleteuser <username>
+ops admin listuser [<username>]
+ops admin usage
+
+# Action management (serverless functions)
+ops action list
+ops action create <n> <file>
+ops action update <n> <file>
+ops action delete <n>
+ops action invoke <n>
+
+# Packages and triggers
+ops package list
+ops trigger list
+ops rule list
+
+# Logs and debugging
+ops activations list
+ops logs <activation-id>
+ops result <activation-id>
+```
+
+### Relationship between kubectl and ops
Review Comment:
do not expose kubecti in this overwview - you do not have generally access to it - it is an implementation detail
##########
OVERVIEW.md:
##########
@@ -0,0 +1,734 @@
+# System Architecture - Kubectl-Ops Cli Guide
+
+## Table of Contents
+1. [Introduction](#introduction)
+2. [System Architecture](#architecture)
+3. [Components and Tools](#components)
+4. [Installation and Setup](#installation)
+5. [User Management](#user-management)
+6. [Daily Operations](#operations)
+7. [Troubleshooting](#troubleshooting)
+
+---
+
+## 1. Introduction {#introduction}
+
+**OpenServerless** is an open source platform for serverless computing that offers a flexible and portable alternative to proprietary cloud provider solutions (AWS Lambda, Azure Functions, Google Cloud Functions).
+
+### Key Features
+- **Fully Open Source**: Completely open and modifiable code
+- **Portability**: Avoids vendor lock-in, deploy anywhere
+- **Kubernetes-Based**: Leverages the cloud-native ecosystem
+- **Self-Hosted**: Complete control over data and infrastructure
+- **Multi-Runtime Compatibility**: Supports multiple programming languages
+
+---
+
+## 2. System Architecture {#architecture}
+
+### Technology Stack
+
+```
+┌─────────────────────────────────────────┐
+│ CLI Tools (ops, kubectl) │
+│ User Interface │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Docker Desktop │
+│ (Container Runtime + Kubernetes) │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Kubernetes Cluster │
+│ • Container Orchestration │
+│ • Resource Management │
+│ • Networking and Storage │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ OpenServerless Platform │
+│ • Controller │
+│ • API Gateway │
+│ • Function Runtime │
+│ • Database (CouchDB) │
+│ • Optional: Redis, MongoDB, MinIO │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Exposed Services │
+│ • REST API │
+│ • Web UI │
+│ • Authentication │
+└─────────────────────────────────────────┘
+```
+
+### Dependency Flow
+
+**Without Docker Desktop:**
+- ❌ Kubernetes unavailable
+- ❌ OpenServerless cannot start
+- ❌ REST APIs inaccessible
+- ❌ Web UI not working
+- ✅ Only CLI tools available (local commands)
+
+**With Docker Desktop Active:**
+- ✅ Kubernetes operational
+- ✅ OpenServerless deployed
+- ✅ REST APIs available
+- ✅ Web UI accessible
+- ✅ Authentication working
+
+---
+
+## 3. Components and Tools {#components}
+
+### kubectl
+
+**What it does:**
+- Command-line client for Kubernetes
+- Manages native K8s resources (pods, services, secrets, namespaces)
+- Operates at **low infrastructure level**
+
+**Essential Commands:**
+
+```bash
+# Check cluster status
+kubectl get nodes
+
+# List namespaces
+kubectl get namespaces
+
+# View all pods
+kubectl get pods --all-namespaces
+
+# View resources in a specific namespace
+kubectl get all -n <namespace>
+
+# View secrets
+kubectl get secrets -n <namespace>
+
+# View pod logs
+kubectl logs <pod-name> -n <namespace>
+
+# Edit a resource
+kubectl edit secret <secret-name> -n <namespace>
+
+# kubectl configuration
+kubectl config view
+kubectl config current-context
+kubectl config get-contexts
+```
+
+### ops CLI
+
+**What it does:**
+- OpenServerless-specific CLI
+- Simplifies complex operations
+- Operates at **high application level**
+- Uses kubectl behind the scenes
+
+**Essential Commands:**
+
+```bash
+# CLI information
+ops -version
+ops -info
+ops -help
+ops -tasks
+
+# Setup and configuration
+ops setup prereq # Validate prerequisites
+ops setup cluster # Deploy on existing cluster
+ops setup devcluster # Create local dev cluster
+ops setup mini # Deploy slim version
+ops setup status # Check status
+ops setup uninstall # Uninstall
+
+# Configuration
+ops -config # Manage configuration
+
+# Authentication
+ops -login <apihost> <username>
+
+# User management (admin)
+ops admin adduser <username> <email> <password> [options]
+ops admin deleteuser <username>
+ops admin listuser [<username>]
+ops admin usage
+
+# Action management (serverless functions)
+ops action list
+ops action create <n> <file>
+ops action update <n> <file>
+ops action delete <n>
+ops action invoke <n>
+
+# Packages and triggers
+ops package list
+ops trigger list
+ops rule list
+
+# Logs and debugging
+ops activations list
+ops logs <activation-id>
+ops result <activation-id>
+```
+
+### Relationship between kubectl and ops
+
+```
+ops admin adduser mario email@test.com Pass123 --all
+ ↓
+ (internally executes)
+ ↓
+kubectl create namespace mario
+kubectl create secret generic mario-auth ...
+kubectl apply -f mario-redis-deployment.yaml
+kubectl apply -f mario-mongodb-deployment.yaml
+kubectl apply -f mario-storage-pvc.yaml
+...
+```
+
+**When to use what:**
+- **ops**: Standard and simplified operations on OpenServerless
+- **kubectl**: Debug, manual modifications, operations not supported by ops (e.g., password change)
+
+---
+
+## 4. Installation and Setup {#installation}
+
+### Prerequisites
+
+**System:**
+- Docker Desktop with at least 6GB RAM
+- 20GB+ available disk space
+
+**Verify installations:**
+
+```bash
+# Verify Docker
+docker --version
+docker ps
+
+# Verify Kubernetes
+kubectl version --client
+kubectl get nodes
+
+# Verify ops
+ops -version
+ops -info
+```
+
+### OpenServerless Setup
+
+#### Option 1: Mini Setup (Lightweight Local)
+
+```bash
+# Deploy slim version
+ops setup mini
+
+# Access: http://devel.miniops.me
+```
+
+#### Option 2: Cluster Setup (Docker Desktop)
+
+```bash
+# 1. Start Docker Desktop and wait for Kubernetes to be ready
+kubectl get nodes
+# Must show: docker-desktop Ready
+
+# 2. Validate prerequisites
+ops setup prereq
+
+# 3. Deploy OpenServerless
+ops setup cluster
+
+# 4. Verify installation
+ops setup status
+
+# 5. Check active pods
+kubectl get pods --all-namespaces
+```
+
+#### Option 3: Dev Cluster
+
+```bash
+# Create and configure a local dev cluster
+ops setup devcluster
Review Comment:
ops setup mini please (forget devcluster)
##########
OVERVIEW.md:
##########
@@ -0,0 +1,734 @@
+# System Architecture - Kubectl-Ops Cli Guide
+
+## Table of Contents
+1. [Introduction](#introduction)
+2. [System Architecture](#architecture)
+3. [Components and Tools](#components)
+4. [Installation and Setup](#installation)
+5. [User Management](#user-management)
+6. [Daily Operations](#operations)
+7. [Troubleshooting](#troubleshooting)
+
+---
+
+## 1. Introduction {#introduction}
+
+**OpenServerless** is an open source platform for serverless computing that offers a flexible and portable alternative to proprietary cloud provider solutions (AWS Lambda, Azure Functions, Google Cloud Functions).
+
+### Key Features
+- **Fully Open Source**: Completely open and modifiable code
+- **Portability**: Avoids vendor lock-in, deploy anywhere
+- **Kubernetes-Based**: Leverages the cloud-native ecosystem
+- **Self-Hosted**: Complete control over data and infrastructure
+- **Multi-Runtime Compatibility**: Supports multiple programming languages
+
+---
+
+## 2. System Architecture {#architecture}
+
+### Technology Stack
+
+```
+┌─────────────────────────────────────────┐
+│ CLI Tools (ops, kubectl) │
+│ User Interface │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Docker Desktop │
+│ (Container Runtime + Kubernetes) │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Kubernetes Cluster │
+│ • Container Orchestration │
+│ • Resource Management │
+│ • Networking and Storage │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ OpenServerless Platform │
+│ • Controller │
+│ • API Gateway │
+│ • Function Runtime │
+│ • Database (CouchDB) │
+│ • Optional: Redis, MongoDB, MinIO │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Exposed Services │
+│ • REST API │
+│ • Web UI │
+│ • Authentication │
+└─────────────────────────────────────────┘
+```
+
+### Dependency Flow
Review Comment:
what is this section?
##########
OVERVIEW.md:
##########
@@ -0,0 +1,734 @@
+# System Architecture - Kubectl-Ops Cli Guide
+
+## Table of Contents
+1. [Introduction](#introduction)
+2. [System Architecture](#architecture)
+3. [Components and Tools](#components)
+4. [Installation and Setup](#installation)
+5. [User Management](#user-management)
+6. [Daily Operations](#operations)
+7. [Troubleshooting](#troubleshooting)
+
+---
+
+## 1. Introduction {#introduction}
+
+**OpenServerless** is an open source platform for serverless computing that offers a flexible and portable alternative to proprietary cloud provider solutions (AWS Lambda, Azure Functions, Google Cloud Functions).
+
+### Key Features
+- **Fully Open Source**: Completely open and modifiable code
+- **Portability**: Avoids vendor lock-in, deploy anywhere
+- **Kubernetes-Based**: Leverages the cloud-native ecosystem
+- **Self-Hosted**: Complete control over data and infrastructure
+- **Multi-Runtime Compatibility**: Supports multiple programming languages
+
+---
+
+## 2. System Architecture {#architecture}
+
+### Technology Stack
+
+```
+┌─────────────────────────────────────────┐
+│ CLI Tools (ops, kubectl) │
+│ User Interface │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Docker Desktop │
+│ (Container Runtime + Kubernetes) │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Kubernetes Cluster │
+│ • Container Orchestration │
+│ • Resource Management │
+│ • Networking and Storage │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ OpenServerless Platform │
+│ • Controller │
+│ • API Gateway │
+│ • Function Runtime │
+│ • Database (CouchDB) │
+│ • Optional: Redis, MongoDB, MinIO │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Exposed Services │
+│ • REST API │
+│ • Web UI │
+│ • Authentication │
+└─────────────────────────────────────────┘
+```
+
+### Dependency Flow
+
+**Without Docker Desktop:**
+- ❌ Kubernetes unavailable
+- ❌ OpenServerless cannot start
+- ❌ REST APIs inaccessible
+- ❌ Web UI not working
+- ✅ Only CLI tools available (local commands)
+
+**With Docker Desktop Active:**
+- ✅ Kubernetes operational
+- ✅ OpenServerless deployed
+- ✅ REST APIs available
+- ✅ Web UI accessible
+- ✅ Authentication working
+
+---
+
+## 3. Components and Tools {#components}
+
+### kubectl
+
+**What it does:**
+- Command-line client for Kubernetes
+- Manages native K8s resources (pods, services, secrets, namespaces)
+- Operates at **low infrastructure level**
+
+**Essential Commands:**
+
+```bash
+# Check cluster status
+kubectl get nodes
+
+# List namespaces
+kubectl get namespaces
+
+# View all pods
+kubectl get pods --all-namespaces
+
+# View resources in a specific namespace
+kubectl get all -n <namespace>
+
+# View secrets
+kubectl get secrets -n <namespace>
+
+# View pod logs
+kubectl logs <pod-name> -n <namespace>
+
+# Edit a resource
+kubectl edit secret <secret-name> -n <namespace>
+
+# kubectl configuration
+kubectl config view
+kubectl config current-context
+kubectl config get-contexts
+```
+
+### ops CLI
+
+**What it does:**
+- OpenServerless-specific CLI
+- Simplifies complex operations
+- Operates at **high application level**
+- Uses kubectl behind the scenes
+
+**Essential Commands:**
+
+```bash
+# CLI information
+ops -version
+ops -info
+ops -help
+ops -tasks
+
+# Setup and configuration
+ops setup prereq # Validate prerequisites
+ops setup cluster # Deploy on existing cluster
+ops setup devcluster # Create local dev cluster
+ops setup mini # Deploy slim version
+ops setup status # Check status
+ops setup uninstall # Uninstall
+
+# Configuration
+ops -config # Manage configuration
+
+# Authentication
+ops -login <apihost> <username>
+
+# User management (admin)
+ops admin adduser <username> <email> <password> [options]
+ops admin deleteuser <username>
+ops admin listuser [<username>]
+ops admin usage
+
+# Action management (serverless functions)
+ops action list
+ops action create <n> <file>
+ops action update <n> <file>
+ops action delete <n>
+ops action invoke <n>
+
+# Packages and triggers
+ops package list
+ops trigger list
+ops rule list
+
+# Logs and debugging
+ops activations list
+ops logs <activation-id>
+ops result <activation-id>
+```
+
+### Relationship between kubectl and ops
+
+```
+ops admin adduser mario email@test.com Pass123 --all
+ ↓
+ (internally executes)
+ ↓
+kubectl create namespace mario
+kubectl create secret generic mario-auth ...
+kubectl apply -f mario-redis-deployment.yaml
+kubectl apply -f mario-mongodb-deployment.yaml
+kubectl apply -f mario-storage-pvc.yaml
+...
+```
+
+**When to use what:**
+- **ops**: Standard and simplified operations on OpenServerless
+- **kubectl**: Debug, manual modifications, operations not supported by ops (e.g., password change)
+
+---
+
+## 4. Installation and Setup {#installation}
+
+### Prerequisites
+
+**System:**
+- Docker Desktop with at least 6GB RAM
+- 20GB+ available disk space
+
+**Verify installations:**
+
+```bash
+# Verify Docker
+docker --version
+docker ps
+
+# Verify Kubernetes
+kubectl version --client
+kubectl get nodes
+
+# Verify ops
+ops -version
+ops -info
+```
+
+### OpenServerless Setup
+
+#### Option 1: Mini Setup (Lightweight Local)
+
+```bash
+# Deploy slim version
+ops setup mini
+
+# Access: http://devel.miniops.me
+```
+
+#### Option 2: Cluster Setup (Docker Desktop)
+
+```bash
+# 1. Start Docker Desktop and wait for Kubernetes to be ready
+kubectl get nodes
+# Must show: docker-desktop Ready
+
+# 2. Validate prerequisites
+ops setup prereq
+
+# 3. Deploy OpenServerless
+ops setup cluster
+
+# 4. Verify installation
+ops setup status
+
+# 5. Check active pods
+kubectl get pods --all-namespaces
+```
+
+#### Option 3: Dev Cluster
+
+```bash
+# Create and configure a local dev cluster
+ops setup devcluster
+```
+
+### Verify Installation
+
+```bash
+# View created namespaces
+kubectl get namespaces
+# Should show: nuvolaris or similar
+
+# View OpenServerless pods
+kubectl get pods -n nuvolaris
+
+# Verify services
+kubectl get services -n nuvolaris
+
+# Test ops configuration
+ops -config
+```
+
+---
+
+## 5. User Management {#user-management}
+
+### Basic Concept
+
+**In OpenServerless: Users = Namespaces**
+- Each user has their own isolated Kubernetes namespace
+- User services run in their namespace
+- Complete isolation between users
+
+### Creating a User
+
+```bash
+# Basic syntax
+ops admin adduser <username> <email> <password>
+
+# With all services
+ops admin adduser mario mario@example.com Pass123! --all --storagequota=auto
Review Comment:
warn here the `!` will create errors in most shells unquoted
##########
OVERVIEW.md:
##########
@@ -0,0 +1,734 @@
+# System Architecture - Kubectl-Ops Cli Guide
+
+## Table of Contents
+1. [Introduction](#introduction)
+2. [System Architecture](#architecture)
+3. [Components and Tools](#components)
+4. [Installation and Setup](#installation)
+5. [User Management](#user-management)
+6. [Daily Operations](#operations)
+7. [Troubleshooting](#troubleshooting)
+
+---
+
+## 1. Introduction {#introduction}
+
+**OpenServerless** is an open source platform for serverless computing that offers a flexible and portable alternative to proprietary cloud provider solutions (AWS Lambda, Azure Functions, Google Cloud Functions).
+
+### Key Features
+- **Fully Open Source**: Completely open and modifiable code
+- **Portability**: Avoids vendor lock-in, deploy anywhere
+- **Kubernetes-Based**: Leverages the cloud-native ecosystem
+- **Self-Hosted**: Complete control over data and infrastructure
+- **Multi-Runtime Compatibility**: Supports multiple programming languages
+
+---
+
+## 2. System Architecture {#architecture}
+
+### Technology Stack
+
+```
+┌─────────────────────────────────────────┐
+│ CLI Tools (ops, kubectl) │
+│ User Interface │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Docker Desktop │
+│ (Container Runtime + Kubernetes) │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Kubernetes Cluster │
+│ • Container Orchestration │
+│ • Resource Management │
+│ • Networking and Storage │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ OpenServerless Platform │
+│ • Controller │
+│ • API Gateway │
+│ • Function Runtime │
+│ • Database (CouchDB) │
+│ • Optional: Redis, MongoDB, MinIO │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Exposed Services │
+│ • REST API │
+│ • Web UI │
+│ • Authentication │
+└─────────────────────────────────────────┘
+```
+
+### Dependency Flow
+
+**Without Docker Desktop:**
+- ❌ Kubernetes unavailable
+- ❌ OpenServerless cannot start
+- ❌ REST APIs inaccessible
+- ❌ Web UI not working
+- ✅ Only CLI tools available (local commands)
+
+**With Docker Desktop Active:**
+- ✅ Kubernetes operational
+- ✅ OpenServerless deployed
+- ✅ REST APIs available
+- ✅ Web UI accessible
+- ✅ Authentication working
+
+---
+
+## 3. Components and Tools {#components}
+
+### kubectl
+
+**What it does:**
+- Command-line client for Kubernetes
+- Manages native K8s resources (pods, services, secrets, namespaces)
+- Operates at **low infrastructure level**
+
+**Essential Commands:**
+
+```bash
+# Check cluster status
+kubectl get nodes
+
+# List namespaces
+kubectl get namespaces
+
+# View all pods
+kubectl get pods --all-namespaces
+
+# View resources in a specific namespace
+kubectl get all -n <namespace>
+
+# View secrets
+kubectl get secrets -n <namespace>
+
+# View pod logs
+kubectl logs <pod-name> -n <namespace>
+
+# Edit a resource
+kubectl edit secret <secret-name> -n <namespace>
+
+# kubectl configuration
+kubectl config view
+kubectl config current-context
+kubectl config get-contexts
+```
+
+### ops CLI
+
+**What it does:**
+- OpenServerless-specific CLI
+- Simplifies complex operations
+- Operates at **high application level**
+- Uses kubectl behind the scenes
+
+**Essential Commands:**
+
+```bash
+# CLI information
+ops -version
+ops -info
+ops -help
+ops -tasks
+
+# Setup and configuration
+ops setup prereq # Validate prerequisites
+ops setup cluster # Deploy on existing cluster
+ops setup devcluster # Create local dev cluster
+ops setup mini # Deploy slim version
+ops setup status # Check status
+ops setup uninstall # Uninstall
+
+# Configuration
+ops -config # Manage configuration
+
+# Authentication
+ops -login <apihost> <username>
+
+# User management (admin)
+ops admin adduser <username> <email> <password> [options]
+ops admin deleteuser <username>
+ops admin listuser [<username>]
+ops admin usage
+
+# Action management (serverless functions)
+ops action list
+ops action create <n> <file>
+ops action update <n> <file>
+ops action delete <n>
+ops action invoke <n>
+
+# Packages and triggers
+ops package list
+ops trigger list
+ops rule list
+
+# Logs and debugging
+ops activations list
+ops logs <activation-id>
+ops result <activation-id>
+```
+
+### Relationship between kubectl and ops
+
+```
+ops admin adduser mario email@test.com Pass123 --all
+ ↓
+ (internally executes)
+ ↓
+kubectl create namespace mario
+kubectl create secret generic mario-auth ...
+kubectl apply -f mario-redis-deployment.yaml
+kubectl apply -f mario-mongodb-deployment.yaml
+kubectl apply -f mario-storage-pvc.yaml
+...
+```
+
+**When to use what:**
+- **ops**: Standard and simplified operations on OpenServerless
+- **kubectl**: Debug, manual modifications, operations not supported by ops (e.g., password change)
+
+---
+
+## 4. Installation and Setup {#installation}
+
+### Prerequisites
+
+**System:**
+- Docker Desktop with at least 6GB RAM
+- 20GB+ available disk space
+
+**Verify installations:**
+
+```bash
+# Verify Docker
+docker --version
+docker ps
+
+# Verify Kubernetes
+kubectl version --client
+kubectl get nodes
+
+# Verify ops
+ops -version
+ops -info
+```
+
+### OpenServerless Setup
+
+#### Option 1: Mini Setup (Lightweight Local)
+
+```bash
+# Deploy slim version
+ops setup mini
+
+# Access: http://devel.miniops.me
+```
+
+#### Option 2: Cluster Setup (Docker Desktop)
+
+```bash
+# 1. Start Docker Desktop and wait for Kubernetes to be ready
+kubectl get nodes
+# Must show: docker-desktop Ready
+
+# 2. Validate prerequisites
+ops setup prereq
+
+# 3. Deploy OpenServerless
+ops setup cluster
+
+# 4. Verify installation
+ops setup status
+
+# 5. Check active pods
+kubectl get pods --all-namespaces
+```
+
+#### Option 3: Dev Cluster
+
+```bash
+# Create and configure a local dev cluster
+ops setup devcluster
+```
+
+### Verify Installation
+
+```bash
+# View created namespaces
+kubectl get namespaces
+# Should show: nuvolaris or similar
+
+# View OpenServerless pods
+kubectl get pods -n nuvolaris
+
+# Verify services
+kubectl get services -n nuvolaris
+
+# Test ops configuration
+ops -config
+```
+
+---
+
+## 5. User Management {#user-management}
+
+### Basic Concept
+
+**In OpenServerless: Users = Namespaces**
+- Each user has their own isolated Kubernetes namespace
+- User services run in their namespace
+- Complete isolation between users
+
+### Creating a User
+
+```bash
+# Basic syntax
+ops admin adduser <username> <email> <password>
+
+# With all services
+ops admin adduser mario mario@example.com Pass123! --all --storagequota=auto
+
+# With specific services
+ops admin adduser luigi luigi@example.com Pass456! --redis --mongodb --minio
+
+# With specific storage quota
+ops admin adduser peach peach@example.com Pass789! --all --storagequota=10G
+```
+
+**Available service options:**
+- `--all`: Enable all services
+- `--redis`: In-memory key-value database
+- `--mongodb`: NoSQL document-oriented database
+- `--minio`: S3-compatible object storage
+- `--postgres`: Relational database
+- `--milvus`: Vector database for AI/ML
+- `--storagequota=<size>`: Storage quota (e.g., 10G) or `auto`
+
+### Listing Users
+
+```bash
+# List all users
+ops admin listuser
+
+# Specific user details
+ops admin listuser mario
+
+# With kubectl
Review Comment:
no
##########
OVERVIEW.md:
##########
@@ -0,0 +1,734 @@
+# System Architecture - Kubectl-Ops Cli Guide
+
+## Table of Contents
+1. [Introduction](#introduction)
+2. [System Architecture](#architecture)
+3. [Components and Tools](#components)
+4. [Installation and Setup](#installation)
+5. [User Management](#user-management)
+6. [Daily Operations](#operations)
+7. [Troubleshooting](#troubleshooting)
+
+---
+
+## 1. Introduction {#introduction}
+
+**OpenServerless** is an open source platform for serverless computing that offers a flexible and portable alternative to proprietary cloud provider solutions (AWS Lambda, Azure Functions, Google Cloud Functions).
+
+### Key Features
+- **Fully Open Source**: Completely open and modifiable code
+- **Portability**: Avoids vendor lock-in, deploy anywhere
+- **Kubernetes-Based**: Leverages the cloud-native ecosystem
+- **Self-Hosted**: Complete control over data and infrastructure
+- **Multi-Runtime Compatibility**: Supports multiple programming languages
+
+---
+
+## 2. System Architecture {#architecture}
+
+### Technology Stack
+
+```
+┌─────────────────────────────────────────┐
+│ CLI Tools (ops, kubectl) │
+│ User Interface │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Docker Desktop │
+│ (Container Runtime + Kubernetes) │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Kubernetes Cluster │
+│ • Container Orchestration │
+│ • Resource Management │
+│ • Networking and Storage │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ OpenServerless Platform │
+│ • Controller │
+│ • API Gateway │
+│ • Function Runtime │
+│ • Database (CouchDB) │
+│ • Optional: Redis, MongoDB, MinIO │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Exposed Services │
+│ • REST API │
+│ • Web UI │
+│ • Authentication │
+└─────────────────────────────────────────┘
+```
+
+### Dependency Flow
+
+**Without Docker Desktop:**
+- ❌ Kubernetes unavailable
+- ❌ OpenServerless cannot start
+- ❌ REST APIs inaccessible
+- ❌ Web UI not working
+- ✅ Only CLI tools available (local commands)
+
+**With Docker Desktop Active:**
+- ✅ Kubernetes operational
+- ✅ OpenServerless deployed
+- ✅ REST APIs available
+- ✅ Web UI accessible
+- ✅ Authentication working
+
+---
+
+## 3. Components and Tools {#components}
+
+### kubectl
+
+**What it does:**
+- Command-line client for Kubernetes
+- Manages native K8s resources (pods, services, secrets, namespaces)
+- Operates at **low infrastructure level**
+
+**Essential Commands:**
+
+```bash
+# Check cluster status
+kubectl get nodes
+
+# List namespaces
+kubectl get namespaces
+
+# View all pods
+kubectl get pods --all-namespaces
+
+# View resources in a specific namespace
+kubectl get all -n <namespace>
+
+# View secrets
+kubectl get secrets -n <namespace>
+
+# View pod logs
+kubectl logs <pod-name> -n <namespace>
+
+# Edit a resource
+kubectl edit secret <secret-name> -n <namespace>
+
+# kubectl configuration
+kubectl config view
+kubectl config current-context
+kubectl config get-contexts
+```
+
+### ops CLI
+
+**What it does:**
+- OpenServerless-specific CLI
+- Simplifies complex operations
+- Operates at **high application level**
+- Uses kubectl behind the scenes
+
+**Essential Commands:**
+
+```bash
+# CLI information
+ops -version
+ops -info
+ops -help
+ops -tasks
+
+# Setup and configuration
+ops setup prereq # Validate prerequisites
+ops setup cluster # Deploy on existing cluster
+ops setup devcluster # Create local dev cluster
+ops setup mini # Deploy slim version
+ops setup status # Check status
+ops setup uninstall # Uninstall
+
+# Configuration
+ops -config # Manage configuration
+
+# Authentication
+ops -login <apihost> <username>
+
+# User management (admin)
+ops admin adduser <username> <email> <password> [options]
+ops admin deleteuser <username>
+ops admin listuser [<username>]
+ops admin usage
+
+# Action management (serverless functions)
+ops action list
+ops action create <n> <file>
+ops action update <n> <file>
+ops action delete <n>
+ops action invoke <n>
+
+# Packages and triggers
+ops package list
+ops trigger list
+ops rule list
+
+# Logs and debugging
+ops activations list
+ops logs <activation-id>
+ops result <activation-id>
+```
+
+### Relationship between kubectl and ops
+
+```
+ops admin adduser mario email@test.com Pass123 --all
+ ↓
+ (internally executes)
+ ↓
+kubectl create namespace mario
+kubectl create secret generic mario-auth ...
+kubectl apply -f mario-redis-deployment.yaml
+kubectl apply -f mario-mongodb-deployment.yaml
+kubectl apply -f mario-storage-pvc.yaml
+...
+```
+
+**When to use what:**
+- **ops**: Standard and simplified operations on OpenServerless
+- **kubectl**: Debug, manual modifications, operations not supported by ops (e.g., password change)
+
+---
+
+## 4. Installation and Setup {#installation}
+
+### Prerequisites
+
+**System:**
+- Docker Desktop with at least 6GB RAM
+- 20GB+ available disk space
+
+**Verify installations:**
+
+```bash
+# Verify Docker
+docker --version
+docker ps
+
+# Verify Kubernetes
+kubectl version --client
+kubectl get nodes
+
+# Verify ops
+ops -version
+ops -info
+```
+
+### OpenServerless Setup
+
+#### Option 1: Mini Setup (Lightweight Local)
+
+```bash
+# Deploy slim version
+ops setup mini
+
+# Access: http://devel.miniops.me
+```
+
+#### Option 2: Cluster Setup (Docker Desktop)
+
+```bash
+# 1. Start Docker Desktop and wait for Kubernetes to be ready
+kubectl get nodes
+# Must show: docker-desktop Ready
+
+# 2. Validate prerequisites
+ops setup prereq
+
+# 3. Deploy OpenServerless
+ops setup cluster
+
+# 4. Verify installation
+ops setup status
+
+# 5. Check active pods
+kubectl get pods --all-namespaces
+```
+
+#### Option 3: Dev Cluster
+
+```bash
+# Create and configure a local dev cluster
+ops setup devcluster
+```
+
+### Verify Installation
Review Comment:
no, use the ops util, ops debug, ops debug kube commands
##########
OVERVIEW.md:
##########
@@ -0,0 +1,734 @@
+# System Architecture - Kubectl-Ops Cli Guide
+
+## Table of Contents
+1. [Introduction](#introduction)
+2. [System Architecture](#architecture)
+3. [Components and Tools](#components)
+4. [Installation and Setup](#installation)
+5. [User Management](#user-management)
+6. [Daily Operations](#operations)
+7. [Troubleshooting](#troubleshooting)
+
+---
+
+## 1. Introduction {#introduction}
+
+**OpenServerless** is an open source platform for serverless computing that offers a flexible and portable alternative to proprietary cloud provider solutions (AWS Lambda, Azure Functions, Google Cloud Functions).
+
+### Key Features
+- **Fully Open Source**: Completely open and modifiable code
+- **Portability**: Avoids vendor lock-in, deploy anywhere
+- **Kubernetes-Based**: Leverages the cloud-native ecosystem
+- **Self-Hosted**: Complete control over data and infrastructure
+- **Multi-Runtime Compatibility**: Supports multiple programming languages
+
+---
+
+## 2. System Architecture {#architecture}
+
+### Technology Stack
+
+```
+┌─────────────────────────────────────────┐
+│ CLI Tools (ops, kubectl) │
+│ User Interface │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Docker Desktop │
+│ (Container Runtime + Kubernetes) │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Kubernetes Cluster │
+│ • Container Orchestration │
+│ • Resource Management │
+│ • Networking and Storage │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ OpenServerless Platform │
+│ • Controller │
+│ • API Gateway │
+│ • Function Runtime │
+│ • Database (CouchDB) │
+│ • Optional: Redis, MongoDB, MinIO │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Exposed Services │
+│ • REST API │
+│ • Web UI │
+│ • Authentication │
+└─────────────────────────────────────────┘
+```
+
+### Dependency Flow
+
+**Without Docker Desktop:**
+- ❌ Kubernetes unavailable
+- ❌ OpenServerless cannot start
+- ❌ REST APIs inaccessible
+- ❌ Web UI not working
+- ✅ Only CLI tools available (local commands)
+
+**With Docker Desktop Active:**
+- ✅ Kubernetes operational
+- ✅ OpenServerless deployed
+- ✅ REST APIs available
+- ✅ Web UI accessible
+- ✅ Authentication working
+
+---
+
+## 3. Components and Tools {#components}
+
+### kubectl
+
+**What it does:**
+- Command-line client for Kubernetes
+- Manages native K8s resources (pods, services, secrets, namespaces)
+- Operates at **low infrastructure level**
+
+**Essential Commands:**
+
+```bash
+# Check cluster status
+kubectl get nodes
+
+# List namespaces
+kubectl get namespaces
+
+# View all pods
+kubectl get pods --all-namespaces
+
+# View resources in a specific namespace
+kubectl get all -n <namespace>
+
+# View secrets
+kubectl get secrets -n <namespace>
+
+# View pod logs
+kubectl logs <pod-name> -n <namespace>
+
+# Edit a resource
+kubectl edit secret <secret-name> -n <namespace>
+
+# kubectl configuration
+kubectl config view
+kubectl config current-context
+kubectl config get-contexts
+```
+
+### ops CLI
+
+**What it does:**
+- OpenServerless-specific CLI
+- Simplifies complex operations
+- Operates at **high application level**
+- Uses kubectl behind the scenes
+
+**Essential Commands:**
+
+```bash
+# CLI information
+ops -version
+ops -info
+ops -help
+ops -tasks
+
+# Setup and configuration
+ops setup prereq # Validate prerequisites
+ops setup cluster # Deploy on existing cluster
+ops setup devcluster # Create local dev cluster
+ops setup mini # Deploy slim version
+ops setup status # Check status
+ops setup uninstall # Uninstall
+
+# Configuration
+ops -config # Manage configuration
+
+# Authentication
+ops -login <apihost> <username>
+
+# User management (admin)
+ops admin adduser <username> <email> <password> [options]
+ops admin deleteuser <username>
+ops admin listuser [<username>]
+ops admin usage
+
+# Action management (serverless functions)
+ops action list
+ops action create <n> <file>
+ops action update <n> <file>
+ops action delete <n>
+ops action invoke <n>
+
+# Packages and triggers
+ops package list
+ops trigger list
+ops rule list
+
+# Logs and debugging
+ops activations list
+ops logs <activation-id>
+ops result <activation-id>
+```
+
+### Relationship between kubectl and ops
+
+```
+ops admin adduser mario email@test.com Pass123 --all
+ ↓
+ (internally executes)
+ ↓
+kubectl create namespace mario
+kubectl create secret generic mario-auth ...
+kubectl apply -f mario-redis-deployment.yaml
+kubectl apply -f mario-mongodb-deployment.yaml
+kubectl apply -f mario-storage-pvc.yaml
+...
+```
+
+**When to use what:**
+- **ops**: Standard and simplified operations on OpenServerless
+- **kubectl**: Debug, manual modifications, operations not supported by ops (e.g., password change)
+
+---
+
+## 4. Installation and Setup {#installation}
+
+### Prerequisites
+
+**System:**
+- Docker Desktop with at least 6GB RAM
+- 20GB+ available disk space
+
+**Verify installations:**
+
+```bash
+# Verify Docker
+docker --version
+docker ps
+
+# Verify Kubernetes
+kubectl version --client
+kubectl get nodes
+
+# Verify ops
+ops -version
+ops -info
+```
+
+### OpenServerless Setup
+
+#### Option 1: Mini Setup (Lightweight Local)
+
+```bash
+# Deploy slim version
+ops setup mini
+
+# Access: http://devel.miniops.me
+```
+
+#### Option 2: Cluster Setup (Docker Desktop)
+
+```bash
+# 1. Start Docker Desktop and wait for Kubernetes to be ready
+kubectl get nodes
+# Must show: docker-desktop Ready
+
+# 2. Validate prerequisites
+ops setup prereq
+
+# 3. Deploy OpenServerless
+ops setup cluster
+
+# 4. Verify installation
+ops setup status
+
+# 5. Check active pods
+kubectl get pods --all-namespaces
+```
+
+#### Option 3: Dev Cluster
+
+```bash
+# Create and configure a local dev cluster
+ops setup devcluster
+```
+
+### Verify Installation
+
+```bash
+# View created namespaces
+kubectl get namespaces
+# Should show: nuvolaris or similar
+
+# View OpenServerless pods
+kubectl get pods -n nuvolaris
+
+# Verify services
+kubectl get services -n nuvolaris
+
+# Test ops configuration
+ops -config
+```
+
+---
+
+## 5. User Management {#user-management}
+
+### Basic Concept
+
+**In OpenServerless: Users = Namespaces**
+- Each user has their own isolated Kubernetes namespace
+- User services run in their namespace
+- Complete isolation between users
+
+### Creating a User
+
+```bash
+# Basic syntax
+ops admin adduser <username> <email> <password>
+
+# With all services
+ops admin adduser mario mario@example.com Pass123! --all --storagequota=auto
+
+# With specific services
+ops admin adduser luigi luigi@example.com Pass456! --redis --mongodb --minio
+
+# With specific storage quota
+ops admin adduser peach peach@example.com Pass789! --all --storagequota=10G
+```
+
+**Available service options:**
+- `--all`: Enable all services
+- `--redis`: In-memory key-value database
+- `--mongodb`: NoSQL document-oriented database
+- `--minio`: S3-compatible object storage
+- `--postgres`: Relational database
+- `--milvus`: Vector database for AI/ML
+- `--storagequota=<size>`: Storage quota (e.g., 10G) or `auto`
+
+### Listing Users
+
+```bash
+# List all users
+ops admin listuser
+
+# Specific user details
+ops admin listuser mario
+
+# With kubectl
+kubectl get namespaces
+```
+
+### Deleting a User
+
+```bash
+# Warning: deletes all user data!
+ops admin deleteuser mario
+
+# Verify deletion
+kubectl get namespace mario
+# Should error: "not found"
+```
+
+### Changing User Password
+
+**Problem**: `ops` has no direct command to change password.
Review Comment:
actually there is... in an api - we have to add here
##########
OVERVIEW.md:
##########
@@ -0,0 +1,734 @@
+# System Architecture - Kubectl-Ops Cli Guide
+
+## Table of Contents
+1. [Introduction](#introduction)
+2. [System Architecture](#architecture)
+3. [Components and Tools](#components)
+4. [Installation and Setup](#installation)
+5. [User Management](#user-management)
+6. [Daily Operations](#operations)
+7. [Troubleshooting](#troubleshooting)
+
+---
+
+## 1. Introduction {#introduction}
+
+**OpenServerless** is an open source platform for serverless computing that offers a flexible and portable alternative to proprietary cloud provider solutions (AWS Lambda, Azure Functions, Google Cloud Functions).
+
+### Key Features
+- **Fully Open Source**: Completely open and modifiable code
+- **Portability**: Avoids vendor lock-in, deploy anywhere
+- **Kubernetes-Based**: Leverages the cloud-native ecosystem
+- **Self-Hosted**: Complete control over data and infrastructure
+- **Multi-Runtime Compatibility**: Supports multiple programming languages
+
+---
+
+## 2. System Architecture {#architecture}
+
+### Technology Stack
+
+```
+┌─────────────────────────────────────────┐
+│ CLI Tools (ops, kubectl) │
+│ User Interface │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Docker Desktop │
+│ (Container Runtime + Kubernetes) │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Kubernetes Cluster │
+│ • Container Orchestration │
+│ • Resource Management │
+│ • Networking and Storage │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ OpenServerless Platform │
+│ • Controller │
+│ • API Gateway │
+│ • Function Runtime │
+│ • Database (CouchDB) │
+│ • Optional: Redis, MongoDB, MinIO │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Exposed Services │
+│ • REST API │
+│ • Web UI │
+│ • Authentication │
+└─────────────────────────────────────────┘
+```
+
+### Dependency Flow
+
+**Without Docker Desktop:**
+- ❌ Kubernetes unavailable
+- ❌ OpenServerless cannot start
+- ❌ REST APIs inaccessible
+- ❌ Web UI not working
+- ✅ Only CLI tools available (local commands)
+
+**With Docker Desktop Active:**
+- ✅ Kubernetes operational
+- ✅ OpenServerless deployed
+- ✅ REST APIs available
+- ✅ Web UI accessible
+- ✅ Authentication working
+
+---
+
+## 3. Components and Tools {#components}
+
+### kubectl
+
+**What it does:**
+- Command-line client for Kubernetes
+- Manages native K8s resources (pods, services, secrets, namespaces)
+- Operates at **low infrastructure level**
+
+**Essential Commands:**
+
+```bash
+# Check cluster status
+kubectl get nodes
+
+# List namespaces
+kubectl get namespaces
+
+# View all pods
+kubectl get pods --all-namespaces
+
+# View resources in a specific namespace
+kubectl get all -n <namespace>
+
+# View secrets
+kubectl get secrets -n <namespace>
+
+# View pod logs
+kubectl logs <pod-name> -n <namespace>
+
+# Edit a resource
+kubectl edit secret <secret-name> -n <namespace>
+
+# kubectl configuration
+kubectl config view
+kubectl config current-context
+kubectl config get-contexts
+```
+
+### ops CLI
+
+**What it does:**
+- OpenServerless-specific CLI
+- Simplifies complex operations
+- Operates at **high application level**
+- Uses kubectl behind the scenes
+
+**Essential Commands:**
+
+```bash
+# CLI information
+ops -version
+ops -info
+ops -help
+ops -tasks
+
+# Setup and configuration
+ops setup prereq # Validate prerequisites
+ops setup cluster # Deploy on existing cluster
+ops setup devcluster # Create local dev cluster
+ops setup mini # Deploy slim version
+ops setup status # Check status
+ops setup uninstall # Uninstall
+
+# Configuration
+ops -config # Manage configuration
+
+# Authentication
+ops -login <apihost> <username>
+
+# User management (admin)
+ops admin adduser <username> <email> <password> [options]
+ops admin deleteuser <username>
+ops admin listuser [<username>]
+ops admin usage
+
+# Action management (serverless functions)
+ops action list
+ops action create <n> <file>
+ops action update <n> <file>
+ops action delete <n>
+ops action invoke <n>
+
+# Packages and triggers
+ops package list
+ops trigger list
+ops rule list
+
+# Logs and debugging
+ops activations list
+ops logs <activation-id>
+ops result <activation-id>
+```
+
+### Relationship between kubectl and ops
+
+```
+ops admin adduser mario email@test.com Pass123 --all
+ ↓
+ (internally executes)
+ ↓
+kubectl create namespace mario
+kubectl create secret generic mario-auth ...
+kubectl apply -f mario-redis-deployment.yaml
+kubectl apply -f mario-mongodb-deployment.yaml
+kubectl apply -f mario-storage-pvc.yaml
+...
+```
+
+**When to use what:**
+- **ops**: Standard and simplified operations on OpenServerless
+- **kubectl**: Debug, manual modifications, operations not supported by ops (e.g., password change)
+
+---
+
+## 4. Installation and Setup {#installation}
+
+### Prerequisites
+
+**System:**
+- Docker Desktop with at least 6GB RAM
+- 20GB+ available disk space
Review Comment:
34gb
##########
OVERVIEW.md:
##########
@@ -0,0 +1,734 @@
+# System Architecture - Kubectl-Ops Cli Guide
+
+## Table of Contents
+1. [Introduction](#introduction)
+2. [System Architecture](#architecture)
+3. [Components and Tools](#components)
+4. [Installation and Setup](#installation)
+5. [User Management](#user-management)
+6. [Daily Operations](#operations)
+7. [Troubleshooting](#troubleshooting)
+
+---
+
+## 1. Introduction {#introduction}
+
+**OpenServerless** is an open source platform for serverless computing that offers a flexible and portable alternative to proprietary cloud provider solutions (AWS Lambda, Azure Functions, Google Cloud Functions).
+
+### Key Features
+- **Fully Open Source**: Completely open and modifiable code
+- **Portability**: Avoids vendor lock-in, deploy anywhere
+- **Kubernetes-Based**: Leverages the cloud-native ecosystem
+- **Self-Hosted**: Complete control over data and infrastructure
+- **Multi-Runtime Compatibility**: Supports multiple programming languages
+
+---
+
+## 2. System Architecture {#architecture}
+
+### Technology Stack
+
+```
+┌─────────────────────────────────────────┐
+│ CLI Tools (ops, kubectl) │
+│ User Interface │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Docker Desktop │
+│ (Container Runtime + Kubernetes) │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Kubernetes Cluster │
+│ • Container Orchestration │
+│ • Resource Management │
+│ • Networking and Storage │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ OpenServerless Platform │
+│ • Controller │
+│ • API Gateway │
+│ • Function Runtime │
+│ • Database (CouchDB) │
+│ • Optional: Redis, MongoDB, MinIO │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Exposed Services │
+│ • REST API │
+│ • Web UI │
+│ • Authentication │
+└─────────────────────────────────────────┘
+```
+
+### Dependency Flow
+
+**Without Docker Desktop:**
+- ❌ Kubernetes unavailable
+- ❌ OpenServerless cannot start
+- ❌ REST APIs inaccessible
+- ❌ Web UI not working
+- ✅ Only CLI tools available (local commands)
+
+**With Docker Desktop Active:**
+- ✅ Kubernetes operational
+- ✅ OpenServerless deployed
+- ✅ REST APIs available
+- ✅ Web UI accessible
+- ✅ Authentication working
+
+---
+
+## 3. Components and Tools {#components}
+
+### kubectl
+
+**What it does:**
+- Command-line client for Kubernetes
+- Manages native K8s resources (pods, services, secrets, namespaces)
+- Operates at **low infrastructure level**
+
+**Essential Commands:**
+
+```bash
+# Check cluster status
+kubectl get nodes
+
+# List namespaces
+kubectl get namespaces
+
+# View all pods
+kubectl get pods --all-namespaces
+
+# View resources in a specific namespace
+kubectl get all -n <namespace>
+
+# View secrets
+kubectl get secrets -n <namespace>
+
+# View pod logs
+kubectl logs <pod-name> -n <namespace>
+
+# Edit a resource
+kubectl edit secret <secret-name> -n <namespace>
+
+# kubectl configuration
+kubectl config view
+kubectl config current-context
+kubectl config get-contexts
+```
+
+### ops CLI
+
+**What it does:**
+- OpenServerless-specific CLI
+- Simplifies complex operations
+- Operates at **high application level**
+- Uses kubectl behind the scenes
+
+**Essential Commands:**
+
+```bash
+# CLI information
+ops -version
+ops -info
+ops -help
+ops -tasks
+
+# Setup and configuration
+ops setup prereq # Validate prerequisites
+ops setup cluster # Deploy on existing cluster
+ops setup devcluster # Create local dev cluster
+ops setup mini # Deploy slim version
+ops setup status # Check status
+ops setup uninstall # Uninstall
+
+# Configuration
+ops -config # Manage configuration
+
+# Authentication
+ops -login <apihost> <username>
+
+# User management (admin)
+ops admin adduser <username> <email> <password> [options]
+ops admin deleteuser <username>
+ops admin listuser [<username>]
+ops admin usage
+
+# Action management (serverless functions)
+ops action list
+ops action create <n> <file>
+ops action update <n> <file>
+ops action delete <n>
+ops action invoke <n>
+
+# Packages and triggers
+ops package list
+ops trigger list
+ops rule list
+
+# Logs and debugging
+ops activations list
+ops logs <activation-id>
+ops result <activation-id>
+```
+
+### Relationship between kubectl and ops
+
+```
+ops admin adduser mario email@test.com Pass123 --all
+ ↓
+ (internally executes)
+ ↓
+kubectl create namespace mario
+kubectl create secret generic mario-auth ...
+kubectl apply -f mario-redis-deployment.yaml
+kubectl apply -f mario-mongodb-deployment.yaml
+kubectl apply -f mario-storage-pvc.yaml
+...
+```
+
+**When to use what:**
+- **ops**: Standard and simplified operations on OpenServerless
+- **kubectl**: Debug, manual modifications, operations not supported by ops (e.g., password change)
+
+---
+
+## 4. Installation and Setup {#installation}
+
+### Prerequisites
+
+**System:**
+- Docker Desktop with at least 6GB RAM
+- 20GB+ available disk space
+
+**Verify installations:**
+
+```bash
+# Verify Docker
+docker --version
+docker ps
+
+# Verify Kubernetes
+kubectl version --client
+kubectl get nodes
+
+# Verify ops
+ops -version
+ops -info
+```
+
+### OpenServerless Setup
+
+#### Option 1: Mini Setup (Lightweight Local)
+
+```bash
+# Deploy slim version
+ops setup mini
+
+# Access: http://devel.miniops.me
+```
+
+#### Option 2: Cluster Setup (Docker Desktop)
+
+```bash
+# 1. Start Docker Desktop and wait for Kubernetes to be ready
+kubectl get nodes
+# Must show: docker-desktop Ready
+
+# 2. Validate prerequisites
+ops setup prereq
+
+# 3. Deploy OpenServerless
+ops setup cluster
+
+# 4. Verify installation
+ops setup status
+
+# 5. Check active pods
+kubectl get pods --all-namespaces
Review Comment:
ops debug watch it is better
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: dev-unsubscribe@openserverless.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] add OVERVIEW.md - quick cli guide, system architeture - [openserverless]
Posted by "default2368 (via GitHub)" <gi...@apache.org>.
default2368 commented on code in PR #177:
URL: https://github.com/apache/openserverless/pull/177#discussion_r2478952581
##########
OVERVIEW.md:
##########
@@ -0,0 +1,734 @@
+# System Architecture - Kubectl-Ops Cli Guide
+
+## Table of Contents
+1. [Introduction](#introduction)
+2. [System Architecture](#architecture)
+3. [Components and Tools](#components)
+4. [Installation and Setup](#installation)
+5. [User Management](#user-management)
+6. [Daily Operations](#operations)
+7. [Troubleshooting](#troubleshooting)
+
+---
+
+## 1. Introduction {#introduction}
+
+**OpenServerless** is an open source platform for serverless computing that offers a flexible and portable alternative to proprietary cloud provider solutions (AWS Lambda, Azure Functions, Google Cloud Functions).
+
+### Key Features
+- **Fully Open Source**: Completely open and modifiable code
+- **Portability**: Avoids vendor lock-in, deploy anywhere
+- **Kubernetes-Based**: Leverages the cloud-native ecosystem
+- **Self-Hosted**: Complete control over data and infrastructure
+- **Multi-Runtime Compatibility**: Supports multiple programming languages
+
+---
+
+## 2. System Architecture {#architecture}
+
+### Technology Stack
+
+```
+┌─────────────────────────────────────────┐
+│ CLI Tools (ops, kubectl) │
+│ User Interface │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Docker Desktop │
+│ (Container Runtime + Kubernetes) │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Kubernetes Cluster │
+│ • Container Orchestration │
+│ • Resource Management │
+│ • Networking and Storage │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ OpenServerless Platform │
+│ • Controller │
+│ • API Gateway │
+│ • Function Runtime │
+│ • Database (CouchDB) │
+│ • Optional: Redis, MongoDB, MinIO │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Exposed Services │
+│ • REST API │
+│ • Web UI │
+│ • Authentication │
+└─────────────────────────────────────────┘
+```
+
+### Dependency Flow
Review Comment:
if you red, i read to; consider claude writes this guide, basing on my questions; so it needs to be reviewed the whole documentations; i comment here to accept your exceptions. thanks
##########
OVERVIEW.md:
##########
@@ -0,0 +1,734 @@
+# System Architecture - Kubectl-Ops Cli Guide
+
+## Table of Contents
+1. [Introduction](#introduction)
+2. [System Architecture](#architecture)
+3. [Components and Tools](#components)
+4. [Installation and Setup](#installation)
+5. [User Management](#user-management)
+6. [Daily Operations](#operations)
+7. [Troubleshooting](#troubleshooting)
+
+---
+
+## 1. Introduction {#introduction}
+
+**OpenServerless** is an open source platform for serverless computing that offers a flexible and portable alternative to proprietary cloud provider solutions (AWS Lambda, Azure Functions, Google Cloud Functions).
+
+### Key Features
+- **Fully Open Source**: Completely open and modifiable code
+- **Portability**: Avoids vendor lock-in, deploy anywhere
+- **Kubernetes-Based**: Leverages the cloud-native ecosystem
+- **Self-Hosted**: Complete control over data and infrastructure
+- **Multi-Runtime Compatibility**: Supports multiple programming languages
+
+---
+
+## 2. System Architecture {#architecture}
+
+### Technology Stack
+
+```
+┌─────────────────────────────────────────┐
+│ CLI Tools (ops, kubectl) │
+│ User Interface │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Docker Desktop │
+│ (Container Runtime + Kubernetes) │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Kubernetes Cluster │
+│ • Container Orchestration │
+│ • Resource Management │
+│ • Networking and Storage │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ OpenServerless Platform │
+│ • Controller │
+│ • API Gateway │
+│ • Function Runtime │
+│ • Database (CouchDB) │
+│ • Optional: Redis, MongoDB, MinIO │
+└─────────────────────────────────────────┘
+ ↓
+┌─────────────────────────────────────────┐
+│ Exposed Services │
+│ • REST API │
+│ • Web UI │
+│ • Authentication │
+└─────────────────────────────────────────┘
+```
+
+### Dependency Flow
+
+**Without Docker Desktop:**
+- ❌ Kubernetes unavailable
+- ❌ OpenServerless cannot start
+- ❌ REST APIs inaccessible
+- ❌ Web UI not working
+- ✅ Only CLI tools available (local commands)
+
+**With Docker Desktop Active:**
+- ✅ Kubernetes operational
+- ✅ OpenServerless deployed
+- ✅ REST APIs available
+- ✅ Web UI accessible
+- ✅ Authentication working
+
+---
+
+## 3. Components and Tools {#components}
+
+### kubectl
+
+**What it does:**
+- Command-line client for Kubernetes
+- Manages native K8s resources (pods, services, secrets, namespaces)
+- Operates at **low infrastructure level**
+
+**Essential Commands:**
Review Comment:
Hello, this is the quick guide that we spoken some days ago, i'm enzonav
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: dev-unsubscribe@openserverless.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] add OVERVIEW.md - quick cli guide, system architeture - [openserverless]
Posted by "sciabarracom (via GitHub)" <gi...@apache.org>.
sciabarracom closed pull request #177: add OVERVIEW.md - quick cli guide, system architeture -
URL: https://github.com/apache/openserverless/pull/177
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: dev-unsubscribe@openserverless.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org