mirror of
https://github.com/Ocelot-Social-Community/Ocelot-Social.git
synced 2025-12-13 07:46:06 +00:00
Persistent Volumes
At the moment, the application needs two persistent volumes:
- The
/data/folder whereneo4jstores its database and - the folder
/develop-backend/public/uploadswhere the backend stores uploads, in case you don't use Digital Ocean Spaces (an AWS S3 bucket) for this purpose.
As a matter of precaution, the persistent volume claims that setup these volumes live in a separate folder. You don't want to accidently loose all your data in your database by running
kubectl delete -f ocelot-social/
or do you?
Create Persistent Volume Claims
Run the following:
# in folder deployments/
$ kubectl apply -f volumes
persistentvolumeclaim/neo4j-data-claim created
persistentvolumeclaim/uploads-claim created
Backup And Restore
We tested a couple of options how to do disaster recovery in kubernetes. First, there is the offline backup strategy of the community edition of Neo4J, which you can also run on a local installation. Kubernetes also offers so-called volume snapshots. Changing the reclaim policy of your persistent volumes might be an additional safety measure. Finally, there is also a kubernetes specific disaster recovery tool called Velero.