.. | ||
config | ||
backend.yaml | ||
db.yaml | ||
frontend.yaml | ||
ingress.yaml | ||
kustomization.yaml | ||
ns.yaml | ||
pvcs.yaml | ||
README.md | ||
redis.yaml |
Kubernetes Installation
- Clone this repo and change to this directory.
- Check the values in
kustomization.yaml
, in theimages
section, to make sure they're pointing to the latest release. - Consider changing the sizes of the volumes in
pvcs.yaml
. - Edit the hostnames in
ingress.yaml
. Consider installing cert-manager and uncommenting the relevant portions ofingress.yaml
. - Edit the values in
config/backend.env
to suit your configuration. - Install these manifests to your cluster with
kubectl apply -k .
. - Create a secret for PostgreSQL authentication.
kubectl create secret generic database -n librephotos DB_PASS=$(openssl rand -hex 16) DB_USER=librephotos
- Create a secret for the backend's key, admin password, and optional MapBox API key.
Substitute values forkubectl create secret generic backend -n librephotos SECRET_KEY=$key ADMIN_PASSWORD=$password MAPBOX_API_KEY=$apikey
$key
,$password
, and$apikey
. Make sure you remember the$password
so you can log in.
If you want, you can watch the Pods get ready with kubectl get pod -n librephotos -w
. Once they're all running,
point your browser at the hostname from ingress.yaml
, and log in as admin
.
Upgrading
Change the values in kustomization.yaml
, in the images
section, to point to the latest versions. Then just rerun
the kubectl apply -k .
command.