使用 su 时无法打开会话
Cannot open session when using su
我正在尝试启动一个容器,该容器通过 运行以另一个用户身份执行多个命令来启动其进程。使用 su
执行命令。我首先认为这是存储后端的问题,因为容器是在 devicemapper 上构建的,但是 运行 在 aufs 上构建的,但是当我使用 docker 运行 时容器正确启动。我还认为这是特权容器的问题,但我已经采取了在我的集群上 运行 特权容器所需的步骤,并在我的 ReplicationController 定义中添加了 privileged: true
标志.感谢任何帮助。
Kube v1
Docker 1.7.0
金币 0.23.0
编辑:所以在一些故障排除之后,我的问题似乎是 Kubernetes 没有正确地将容器设置为特权。尽管我为我的 apiserver 设置了 --allow-privileged=true,并且下面的代码片段来自我的 ReplicationController:
spec:
containers:
- name: oracledb
image: bradams/devops:oracle-test
privileged: true
不知道我还应该在这里做什么。
正确的语法是:
spec:
containers:
- name: oracledb
image: bradams/devops:oracle-test
securityContext:
privileged: true
您缺少 securityContext:
下的嵌套。这在 v1beta3 和 v1 之间发生了变化,记录在此处:http://kubernetes.io/v1.0/docs/api.html#v1-conversion-tips-from-v1beta3
如果您尝试使用 kubectl create --validate=true ...
创建 pod,那么我认为这个问题会被捕获,并显示一条错误消息。
我正在尝试启动一个容器,该容器通过 运行以另一个用户身份执行多个命令来启动其进程。使用 su
执行命令。我首先认为这是存储后端的问题,因为容器是在 devicemapper 上构建的,但是 运行 在 aufs 上构建的,但是当我使用 docker 运行 时容器正确启动。我还认为这是特权容器的问题,但我已经采取了在我的集群上 运行 特权容器所需的步骤,并在我的 ReplicationController 定义中添加了 privileged: true
标志.感谢任何帮助。
Kube v1
Docker 1.7.0
金币 0.23.0
编辑:所以在一些故障排除之后,我的问题似乎是 Kubernetes 没有正确地将容器设置为特权。尽管我为我的 apiserver 设置了 --allow-privileged=true,并且下面的代码片段来自我的 ReplicationController:
spec:
containers:
- name: oracledb
image: bradams/devops:oracle-test
privileged: true
不知道我还应该在这里做什么。
正确的语法是:
spec:
containers:
- name: oracledb
image: bradams/devops:oracle-test
securityContext:
privileged: true
您缺少 securityContext:
下的嵌套。这在 v1beta3 和 v1 之间发生了变化,记录在此处:http://kubernetes.io/v1.0/docs/api.html#v1-conversion-tips-from-v1beta3
如果您尝试使用 kubectl create --validate=true ...
创建 pod,那么我认为这个问题会被捕获,并显示一条错误消息。