Kubernetes deployment
This deploys Qinglong as a single-replica StatefulSet with persistent data at /ql/data.
kubectl apply -k deploy/kubernetes/overlays/local
kubectl -n qinglong rollout status statefulset/qinglong
Open the panel locally:
kubectl -n qinglong port-forward svc/qinglong 5700:5700
Then visit http://127.0.0.1:5700.
Image registry overlays
Use overlays/example as the committed template for registry customization:
whyour/qinglong:debian -> registry.example.com/whyour/qinglong:debian
Create overlays/local/kustomization.yaml for the actual cluster image. The local overlay is ignored by git so private registry names, digests, and credentials-related references stay local.
Storage
The manifest creates a 5 GiB ReadWriteOnce PVC from the cluster's default StorageClass.
If your cluster has no default storage class, add storageClassName under:
volumeClaimTemplates:
- metadata:
name: data
spec:
storageClassName: your-storage-class
Keep replicas: 1. Qinglong stores state in the persistent data directory, including SQLite files, so multiple replicas should not share the same data volume.
Ingress example
If you expose Qinglong through an Ingress path other than /, set QlBaseUrl to the same path with leading and trailing slashes.
env:
- name: QlBaseUrl
value: "/qinglong/"
Example Ingress:
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: qinglong
namespace: qinglong
spec:
rules:
- host: qinglong.example.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: qinglong
port:
number: 5700
Maintenance commands
kubectl -n qinglong logs -f statefulset/qinglong
kubectl -n qinglong exec -it statefulset/qinglong -- ql check
kubectl -n qinglong exec -it statefulset/qinglong -- ql update