当我们绑定卷时,它会失去对路径的权限/usr/share/nginx/html
。这是因为 SELinux 的强制执行。
我的nginx1
root@f3fb6ece7eba:/usr/share/nginx/html# ls
50x.html index.html
我的nginx2
root@af0803674402:/usr/share/nginx/html# ls
ls: cannot open directory '.': Permission denied
检查运行 podman 的主机的 SELinux 策略。
$ getenforce
Enforcing
如果它处于Enforcing
模式中,请将其更改为Permissive
.
$ sudo setenforce 0
$ getenforce
Permissive
重新运行 mynginx2 容器,exec
并访问其中的内容/usr/share/nginx/html
$ podman run --name mynginx2 --mount type=bind,source=/home/tc/q2,target=/usr/share/nginx/html -p 9080:80 -d nginx
7ff2bdfb7ccfc6f90a9bd7957b08e48ea72d7c2303d47d11a412c6c8601976b6
$ podman exec -it mynginx2 bash
root@7ff2bdfb7ccf:/# cd /usr/share/nginx/html/
root@7ff2bdfb7ccf:/usr/share/nginx/html# ls
index.html
$ curl -I -s 127.0.0.1:8080
HTTP/1.1 200 OK
$ curl -I 127.0.0.1:9080
HTTP/1.1 200 OK