Kubernetes openshift:部署期间拒绝权限

时间:2018-04-16 00:06:21

标签: docker kubernetes openshift

我正在使用以下代码段来创建部署

oc create -f nginx-deployment.yaml

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: nginx-deployment
  labels:
    app: nginx
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
      annotations:
        openshift.io/scc: privileged
    spec:
      securityContext:
        priviledged: false
        runAsUser: 0
      volumes:
      - name: static-web-volume
        hostPath:
          path: /home/testFolder
          type: Directory
      containers:
      - name: nginx
        image: nginx:1.7.9
        ports:
        - containerPort: 80
        volumeMounts:
        - mountPath: /usr/share/nginx/html 
          name: static-web-volume

当我尝试进入html文件夹

时,我获得了权限被拒绝的问题
$ cd /usr/share/nginx/html                                                                                                                                                                                                             
$ ls                                                                                                                                                                                                                                   
ls: cannot open directory .: Permission denied

这是最简单的示例代码,因为我有类似的要求,我必须从已安装的驱动器读取文件,但那个也失败了。

我正在使用kubernetes 1.5,因为这只有一个可用。我不确定卷是否已安装。
我的所有dir权限也设置为root。

/ home / testfolder的内容 0 drwxrwxrwx. 3 root root 52 Apr 15 23:06 . 4 dr-xr-x---. 11 root root 4096 Apr 15 22:58 .. 0 drwxrwxrwx. 2 root root 6 Apr 15 19:56 ind 4 -rwxrwxrwx. 1 root root 14 Apr 15 19:22 index.html 4 -rwxrwxrwx. 1 root root 694 Apr 15 23:06 ordr.yam

1 个答案:

答案 0 :(得分:1)

我记得有时候在openshift中打这个。它与主机上的SElinux配置有关。

在装载到容器卷/ usr / share / nginx / html的主机服务器上尝试此操作。

sudo chcon -Rt svirt_sandbox_file_t /