Files
api7-demo/README.md
d.viti 3e6798a3e5
All checks were successful
Helm Chart Build / lint-only (push) Has been skipped
Helm Chart Build / build-helm (push) Successful in 12s
Build and Deploy / build-api (push) Successful in 48s
Build and Deploy / build-web (push) Successful in 1m11s
Add root-level Secret template and update .gitignore
Added Secret template for API7 Gateway credentials management
and improved .gitignore to prevent credential leaks.

Changes:

1. Secret Template (api7-credentials.yaml.template):
   - Template for creating API7 Gateway admin credentials Secret
   - Clear instructions for getting admin key from cluster
   - Examples for both stringData and base64 encoded data
   - Must be copied and filled in, then applied to cluster

2. .gitignore Updates:
   - Added api7-credentials.yaml to ignore actual secrets
   - Added wildcard *-credentials.yaml for any credential files
   - Excluded templates (!*-credentials.yaml.template)
   - Improved comments for clarity

3. README.md:
   - Comprehensive quick start guide
   - Features overview
   - Installation steps with Secret creation
   - Documentation links
   - Basic troubleshooting

Security:
- Prevents committing actual credentials
- Clear separation between templates and actual secrets
- Instructions for secure credential management

Users should:
1. Copy api7-credentials.yaml.template
2. Fill in actual credentials
3. Apply to cluster
4. Never commit filled secrets to git

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-09 16:06:33 +02:00

87 lines
2.3 KiB
Markdown

# API7 Enterprise Demo
Complete production-ready deployment of API7 Enterprise API Gateway on Kubernetes.
## Features
-**API7 Enterprise Gateway** with advanced routing and plugins
-**Kubernetes Service Discovery** for dynamic backend discovery
-**Automatic TLS** with cert-manager and Let's Encrypt
-**Rate Limiting** (standard + AI-based for LLM endpoints)
-**CORS** policies for browser-based applications
-**Secure Secret Management** with External Secrets Operator support
-**CI/CD** integration with ArgoCD
-**Complete Documentation** with MkDocs
## Quick Start
### Prerequisites
- Kubernetes cluster (1.24+)
- Helm 3.x
- kubectl configured
- cert-manager installed
- NGINX Ingress Controller
### Installation
1. **Clone the repository:**
```bash
git clone https://git.commandware.com/demos/api7-demo.git
cd api7-demo
```
2. **Create API7 credentials secret:**
```bash
# Copy the template
cp api7-credentials.yaml.template api7-credentials.yaml
# Get the admin key from API7 installation
kubectl get secret -n api7ee api7ee3-0-1759339083 \
-o jsonpath='{.data.admin_key}' | base64 -d
# Edit api7-credentials.yaml and fill in the actual admin key
vim api7-credentials.yaml
# Apply the secret
kubectl apply -f api7-credentials.yaml -n api7ee
```
3. **Update values.yaml to use the secret:**
```yaml
api7:
gateway:
existingSecret: "api7-credentials"
```
4. **Deploy with Helm:**
```bash
helm upgrade --install api7ee-demo helm/api7ee-demo-k8s \
--namespace api7ee \
--create-namespace \
--values values.yaml
```
5. **Verify deployment:**
```bash
kubectl get all -n api7ee
kubectl logs -n api7ee job/api7ee-demo-api7ee-demo-k8s-adc-sync
curl https://commandware.it/api/health
```
## Documentation
View comprehensive documentation at: **[web/docs/](web/docs/)**
- [Getting Started](web/docs/getting-started.md)
- [Architecture](web/docs/architecture.md)
- [Ingress & Routing](web/docs/ingress-routing.md)
- [Service Discovery](web/docs/service-discovery.md)
- [Secret Management](web/docs/secret-management.md)
- [Troubleshooting](web/docs/troubleshooting.md)
## Support
- Issues: https://git.commandware.com/demos/api7-demo/issues
- API7 Docs: https://docs.api7.ai/enterprise/