Mount the Docker file on CentOS7. The container does not have the execution permission. centos7docker
Run the NodeJs container in CentOS7 and find that the mounted local directory does not have the execution permission in the container. After various verifications and Google searches, find the cause of the problem. Here we will record it. The reason is that selinux, the security module in CentOS7, has disabled permissions. There are at least three methods to solve the problem that the mounted directory does not have permissions:
1. Add the following privileges to the container when running the container:
Example: docker run-I-t-privileged = true-v/home/docs:/src waterchestnut/nodejs: 0.12.0
2. temporarily disable selinux:
Example: su-c
Setenforce 0
Run docker run-I-t-v/home/docs:/src waterchestnut/nodejs: 0.12.0.
Note: After that, remember to re-enable selinux. Command: su-c "setenforce 1"
3. Add selinux rules and add the directories to be mounted to the whitelist:
Example: chcon-Rt svirt_sandbox_file_t/home/docs
Run docker run-I-t-v/home/docs:/src waterchestnut/nodejs: 0.12.0.