在Rethat上使用docker掛載一個卷的時候,發(fā)現(xiàn)在該容器中無法查看該掛載目錄內(nèi)容Permission denied
具體操作如下:
docker run -dti -v /root/test:/var/test:rw ppc64le/ubuntu:16.04 /bin/bash
e1a26fbfd56e155e1c4a1c5e096b4f3f93df9ce87b7adf0444acc2d361571922
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e1a26fbfd56e ppc64le/ubuntu:16.04 "/bin/bash" 4 seconds ago Up 2 seconds thirsty_euclid
docker exec -ti e1a26fbfd56e /bin/bash
root@e1a26fbfd56e:/# cd /var/test/
root@e1a26fbfd56e:/var/test# ls
ls: cannot open directory '.': Permission denied
首先想到的是文件權(quán)限,沒有問題,掛載權(quán)限也沒有問題,最后發(fā)現(xiàn)在
Rethat系統(tǒng)中docker的默認開啟了--selinux-enabled
選項,(ubutun中是沒有開啟的)
ps -elf | grep docker
4 S root 2590 27391 0 80 0 - 19272 futex_ 03:34 pts/0 00:00:01 /usr/bin/docker-current daemon --exec-opt native.cgroupdriver=systemd --selinux-enabled --log-driver=journald
然后,在docker的啟動參數(shù)中去掉--selinux-enabled
,重新啟動docker,問題解決。
關(guān)于--selinux-enabled
在docker中的具體作用,資料太少,求大神解答:)