mariadb crashes inside kubernetes pod with hostpath volume mariadb crashes inside kubernetes pod with hostpath volume kubernetes kubernetes

mariadb crashes inside kubernetes pod with hostpath volume


By default, hostPath directories are created with permission 755, owned by the user and group of the kubelet. To use the directory, you can try adding the following to your deployment:

  spec:     securityContext:       fsGroup: <gid>

Where gid is the group used by the process in your container.

Also, you could fix the issue on the host itself by changing the permissions of the folder you want to mount into the container:

chown-R <uid>:<gid> /path/to/volume

where uid and gid are the userId and groupId from your app.

chmod -R 777 /path/to/volume

This should solve your issue.

But overall, a deployment is not what you want to create in this case, because deployments should not have state. For stateful apps, there are 'StatefulSets' in Kubernetes. Use those together with a 'VolumeClaimTemplate' plus spec.securityContext.fsgroup and k3s will create the persitent volume and the persistent volume claim for you, using it's default storage class, which is local storage (on your node).