Docker挂载宿主机目录出现Cannot create directory

Docker挂载宿主机目录 /var/oracle/data 到oracle服务器*/u01/app/oracle*目录

宿主机目录不挂载到docker容器时,启动成功

docker run -d -p 8080:8080 -p 1521:1521 --name orac  truevoly/oracle-12c

图片说明

当将宿主机目录挂载到docker容器时,就会出现问题
docker run --restart always -d -v /var/oracle/oracledata:/u01/app/oracle -p 8080:8080 -p 1521:1521  -u root --name oracle --privileged=true truevoly/oracle-12c

出现无法创建目录的报错

Cannot create directory "/u01/app/oracle/cfgtoollogs/dbca".

图片说明
参考网路上的办法,添加了-u root 和 --privileged=true,另外对文件夹也手动赋权过 ,结果依旧不行,求问有没有懂得人,指点一下。

回来填坑,在 启动前先执行

mkdir -p  /u01/app/oracle  && chmod 777 /u01/app/oracle
mkdir -p  /var/oracle/data  && chmod 777 /var/oracle/data

我试过自动创建目录,也试过手动建目录后面再给权限,结果都失败了,必须要在启动前先执行上面代码,有没有高手解释一下为什么?

本地volume的权限需要开放,chmod -R a+w /var/oracle/oracledata

chmod -R 775 /u01/app/
给个权限看看