Add comprehensive Warehouse13 Helm chart with configurable images
Features: - Complete Helm chart at helm/warehouse13/ with Warehouse13 branding - Configurable images for all components (PostgreSQL, MinIO, API, Frontend) - Support for 3 deployment scenarios: dev, production, air-gapped - 14 Kubernetes templates: Deployments, StatefulSets, Services, Ingress - Persistent storage with configurable storage classes - Health checks for all services - Ingress with TLS support - Security contexts and RBAC - Comprehensive documentation: - HELM-DEPLOYMENT.md (main Kubernetes guide) - helm/warehouse13/README.md (full chart docs) - helm/warehouse13/QUICKSTART.md (5-min deployment) - Example values files (dev, production, air-gapped) - Updated main README.md with Helm deployment instructions - Marked old helm chart as deprecated All component images fully configurable via values.yaml: - postgres:15-alpine - minio/minio:latest - warehouse13/api:latest - warehouse13/frontend:latest 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
148
helm/warehouse13/QUICKSTART.md
Normal file
148
helm/warehouse13/QUICKSTART.md
Normal file
@@ -0,0 +1,148 @@
|
||||
# Warehouse13 Helm Chart - Quick Start
|
||||
|
||||
## 5-Minute Deployment
|
||||
|
||||
### Prerequisites Check
|
||||
|
||||
```bash
|
||||
# Verify Kubernetes cluster access
|
||||
kubectl cluster-info
|
||||
|
||||
# Verify Helm is installed
|
||||
helm version
|
||||
|
||||
# Create namespace
|
||||
kubectl create namespace warehouse13
|
||||
```
|
||||
|
||||
### Deploy with Defaults
|
||||
|
||||
```bash
|
||||
# Install chart
|
||||
helm install warehouse13 ./helm/warehouse13 --namespace warehouse13
|
||||
|
||||
# Wait for ready
|
||||
kubectl wait --for=condition=ready pod --all -n warehouse13 --timeout=5m
|
||||
```
|
||||
|
||||
### Access Application
|
||||
|
||||
```bash
|
||||
# In separate terminals, run:
|
||||
|
||||
# Terminal 1: Frontend
|
||||
kubectl port-forward -n warehouse13 svc/warehouse13-frontend 4200:80
|
||||
|
||||
# Terminal 2: API
|
||||
kubectl port-forward -n warehouse13 svc/warehouse13-api 8000:8000
|
||||
|
||||
# Terminal 3: MinIO Console
|
||||
kubectl port-forward -n warehouse13 svc/warehouse13-minio 9001:9001
|
||||
```
|
||||
|
||||
Then open in browser:
|
||||
- **Frontend:** http://localhost:4200
|
||||
- **API Docs:** http://localhost:8000/docs
|
||||
- **MinIO Console:** http://localhost:9001
|
||||
- Username: `minioadmin`
|
||||
- Password: `minioadmin`
|
||||
|
||||
## Common Scenarios
|
||||
|
||||
### 1. Development (No Persistence)
|
||||
|
||||
```bash
|
||||
helm install warehouse13 ./helm/warehouse13 \
|
||||
--namespace warehouse13 \
|
||||
--values ./helm/warehouse13/values-dev.yaml
|
||||
```
|
||||
|
||||
### 2. Production (With Ingress)
|
||||
|
||||
```bash
|
||||
# Update values-production.yaml with your settings first
|
||||
helm install warehouse13 ./helm/warehouse13 \
|
||||
--namespace warehouse13 \
|
||||
--values ./helm/warehouse13/values-production.yaml
|
||||
```
|
||||
|
||||
### 3. Air-Gapped (Custom Registry)
|
||||
|
||||
```bash
|
||||
# Update values-airgapped.yaml with your registry first
|
||||
helm install warehouse13 ./helm/warehouse13 \
|
||||
--namespace warehouse13 \
|
||||
--values ./helm/warehouse13/values-airgapped.yaml
|
||||
```
|
||||
|
||||
### 4. Custom Image Repository
|
||||
|
||||
```bash
|
||||
helm install warehouse13 ./helm/warehouse13 \
|
||||
--namespace warehouse13 \
|
||||
--set postgres.image.repository=myregistry.com/postgres \
|
||||
--set minio.image.repository=myregistry.com/minio \
|
||||
--set api.image.repository=myregistry.com/warehouse13-api \
|
||||
--set frontend.image.repository=myregistry.com/warehouse13-frontend
|
||||
```
|
||||
|
||||
## Verify Deployment
|
||||
|
||||
```bash
|
||||
# Check pods
|
||||
kubectl get pods -n warehouse13
|
||||
|
||||
# Check services
|
||||
kubectl get svc -n warehouse13
|
||||
|
||||
# View logs
|
||||
kubectl logs -n warehouse13 -l app.kubernetes.io/component=api --tail=50
|
||||
|
||||
# Check resource usage
|
||||
kubectl top pods -n warehouse13
|
||||
```
|
||||
|
||||
## Cleanup
|
||||
|
||||
```bash
|
||||
# Uninstall release
|
||||
helm uninstall warehouse13 -n warehouse13
|
||||
|
||||
# Delete PVCs (data will be lost!)
|
||||
kubectl delete pvc -n warehouse13 --all
|
||||
|
||||
# Delete namespace
|
||||
kubectl delete namespace warehouse13
|
||||
```
|
||||
|
||||
## Next Steps
|
||||
|
||||
- **Full Documentation:** [README.md](./README.md)
|
||||
- **Deployment Guide:** [../../HELM-DEPLOYMENT.md](../../HELM-DEPLOYMENT.md)
|
||||
- **Configuration Options:** [values.yaml](./values.yaml)
|
||||
- **Example Configs:** [values-dev.yaml](./values-dev.yaml), [values-production.yaml](./values-production.yaml), [values-airgapped.yaml](./values-airgapped.yaml)
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Pods stuck in Pending
|
||||
```bash
|
||||
kubectl describe pod <pod-name> -n warehouse13
|
||||
# Check: PVC status, node resources, storage classes
|
||||
```
|
||||
|
||||
### Image pull errors
|
||||
```bash
|
||||
kubectl describe pod <pod-name> -n warehouse13
|
||||
# Check: Image repository, credentials, network access
|
||||
```
|
||||
|
||||
### Database connection errors
|
||||
```bash
|
||||
kubectl logs -n warehouse13 warehouse13-postgres-0
|
||||
kubectl get secret -n warehouse13 warehouse13-secrets -o yaml
|
||||
```
|
||||
|
||||
## Support
|
||||
|
||||
- GitHub Issues: https://github.com/yourusername/warehouse13/issues
|
||||
- Documentation: https://warehouse13.example.com/docs
|
||||
Reference in New Issue
Block a user