add isolated live development deployments
This commit is contained in:
31
README.md
31
README.md
@@ -1,7 +1,7 @@
|
||||
# Minikube hello
|
||||
|
||||
A minimal NGINX image deployed to Minikube with Helm at
|
||||
`http://hello.k.mancave.link`.
|
||||
A minimal NGINX application with separate production and live-edit
|
||||
development deployments.
|
||||
|
||||
## Build and push
|
||||
|
||||
@@ -10,12 +10,35 @@ docker build -t git.fisoft.eu/ficik/minikube/hello:latest .
|
||||
docker push git.fisoft.eu/ficik/minikube/hello:latest
|
||||
```
|
||||
|
||||
## Deploy
|
||||
## Production deployment
|
||||
|
||||
Create a `kubernetes.io/dockerconfigjson` pull secret named
|
||||
`git-fisoft-registry` in the `hello` namespace with credentials for
|
||||
`git.fisoft.eu`, then install the chart:
|
||||
|
||||
```bash
|
||||
helm upgrade --install hello ./chart --namespace hello --create-namespace
|
||||
helm upgrade --install hello ./deploy/helm --namespace hello --create-namespace
|
||||
```
|
||||
|
||||
## Live development
|
||||
|
||||
Each development instance gets its own URL, Kubernetes label, and shared source
|
||||
directory. The scripts default to the current repository directory name, or an
|
||||
instance can be supplied explicitly:
|
||||
|
||||
```bash
|
||||
./dev/start.sh hello
|
||||
./dev/start.sh feature-one feature-one.control.k.mancave.link
|
||||
```
|
||||
|
||||
Edits anywhere under `src/` are mirrored into the running NGINX pod. Stop an
|
||||
instance and permanently remove its Kubernetes resources, sync process, and
|
||||
shared files with:
|
||||
|
||||
```bash
|
||||
./dev/stop.sh hello
|
||||
```
|
||||
|
||||
The scripts use namespace `vibes`, PVC `control-vibes-control-data`, and domain
|
||||
`control.k.mancave.link` by default. Override them with `DEV_NAMESPACE`,
|
||||
`DEV_PVC`, `DEV_SHARED_ROOT`, `DEV_PVC_SUBPATH_ROOT`, or `DEV_DOMAIN`.
|
||||
|
||||
Reference in New Issue
Block a user