Changes:
- Created scripts/ directory for build and utility scripts
- Moved build-for-airgap.sh to scripts/
- Moved check-ready.sh to scripts/
- Kept quickstart scripts in root for easy access
- Moved HELM-DEPLOYMENT.md to docs/
Updated references:
- README.md: Updated link to docs/HELM-DEPLOYMENT.md
- docs/DEPLOYMENT.md: Updated paths to scripts/build-for-airgap.sh
- quickstart-airgap.sh: Updated path to scripts/build-for-airgap.sh
- scripts/check-ready.sh: Updated self-reference path
- helm/warehouse13/QUICKSTART.md: Updated HELM-DEPLOYMENT.md path
- helm/README.md: Updated HELM-DEPLOYMENT.md path
Directory structure now:
/
├── README.md (root)
├── quickstart.sh (root - easy access)
├── quickstart-airgap.sh (root - easy access)
├── docs/ (all documentation)
│ ├── API.md
│ ├── ARCHITECTURE.md
│ ├── DEPLOYMENT.md
│ ├── FEATURES.md
│ ├── FRONTEND_SETUP.md
│ ├── HELM-DEPLOYMENT.md (moved here)
│ └── SUMMARY.md
├── scripts/ (build and utility scripts)
│ ├── build-for-airgap.sh (moved here)
│ └── check-ready.sh (moved here)
└── helm/
└── warehouse13/ (Helm chart with docs)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
149 lines
3.4 KiB
Markdown
149 lines
3.4 KiB
Markdown
# 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:** [../../docs/HELM-DEPLOYMENT.md](../../docs/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
|