Thought I would let you all know in case you have missed it. A few days ago Postgres support was finally merged into Sonarr dev branch (meaning 4.x version). I have already transitioned to it, so far it runs without issue
You can mostly follow the same instructions as for Radarr from here: https://wiki.servarr.com/radarr/postgres-setup
I used the following temporary docker container to do the conversion (obviously replace stuff you need to):
docker run --rm -v Route\to\sonarr.db:/sonarr.db --network=host dimitri/pgloader pgloader --debug --verbose --with “quote identifiers” --with “data only” “sqlite://sonarr.db” “postgresql://user:pwd@DB-IP/sonarr-main”
When it completed the run, it outputs a kind of table that shows if there were any errors. In my case there were 2 tables (cant remember which ones anymore) that couldn’t be inserted, so I edited those manually afterwards, so it matches the ones in the original DB.
Longhorn storage, ceph block, or other distribed BLOCK storage can help assist this issue.
Yeah I’m using Longhorn. Might be that I have set it up wrong, but didn’t seem to have helped with the DB corruption issue.
If you are using longhorn in RWO mode, you shouldn’t have any issues as it passes block storage directly to the pod, via iscsi. No file/nfs storage involved.
Here is what I’m using atm. Is there a better way to do this? I’m still learning K8S :)
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: sonarr-pvc spec: accessModes: - ReadWriteOnce storageClassName: longhorn resources: requests: storage: 250Mi --- [....] volumes: - name: config persistentVolumeClaim: claimName: sonarr-pvc
Looks correct to me.