kubernetes mysql chown operation not permitted

I am currently experimenting with Kubernetes and have installed a small cluster on ESX infra I had running here locally. I installed two slave nodes with a master node using Project Atomic with Fedora. The cluster is all installed fine and seems to be running. However I first want to get a MySQL container up and running, but no matter what I try i cannot get it to run.

apiVersion: v1
kind: Pod
metadata:
  name: mysql
  labels: 
    name: mysql
spec: 
  containers: 
    - resources:
       limits :
          cpu: 0.5
      image: mysql:5.6
      name: mysql
      env:
        - name: MYSQL_ROOT_PASSWORD
          value: myPassw0rd
      ports: 
        - containerPort: 3306
          name: mysql
      volumeMounts:
        - name: mysql-persistent-storage
          mountPath: /var/lib/mysql
  volumes:
    - name: mysql-persistent-storage
      nfs:
        server: 10.0.0.2
        path: "/export/mysql"

For the volume I already tried all kinds of solutions, I tried using persistent volume with and without claim. I tried using host volume and emptyDir, but I always end up with this error when the container starts:

  • Do you have any resource explaining how to use Firebase Test lab with GitLab pipeline?
  • Docker-compose and pdb
  • Use Docker rather than native/homebrew on Mac?
  • How to pass supervisor an environment variable from the docker run command
  • Auto-restarting Docker container on Google Compute Engine
  • Can close properly a websocket with docker
  • chown: changing ownership of ‘/var/lib/mysql/’: Operation not permitted

    I must be doing something stupid, but no idea what to do here?

  • Setting volumes in docker-compose.yml file for windows 10 home
  • Docker push - net/http: TLS handshake timeout
  • FATA[0000] Get http:///var/run/docker.sock/v1.17/version: dial unix /var/run/docker.sock
  • After deployment of WAR to tomcat docker container always getting 404
  • Installing rbenv on docker ubuntu/debian
  • Monitor docker containers based on labels assigned
  • One Solution collect form web for “kubernetes mysql chown operation not permitted”

    Ok it seems I can answer my own question, the problem was lying in the NFS share that was being used as the persistent volume. I had it set to ‘squash_all’ in the export but it needs to have a ‘no_root_squash’ to allow root in case of docker container to chown on the nfs bound volume.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.