我试图启动一个容器,通过以另一个用户的身份运行多个命令来启动它的进程。这些命令使用su执行。我最初认为这是存储后端中的一个问题,因为容器是在devicemapper上构建的,但是运行在aufs上,但是当我使用docker run时容器会正确启动。我还认为这是容器有特权的问题,但我已经采取必要步骤在集群上运行特权容器,并将privileged: true标志添加到我的ReplicationController定义中。任何帮助都是非常感谢的。
Kube v1
码头1.7.0
MES0.23.0
编辑:因此,经过一些故障排除后,我的问题似乎是Kubernetes没有正确地将容器设置为特权。尽管我已经为我的apiserver设置了--允许特权=真集,并且我的ReplicationController中有下面的代码片段:
spec:
containers:
- name: oracledb
image: bradams/devops:oracle-test
privileged: true不知道我还应该在这里做什么。
发布于 2015-10-15 23:44:29
正确的语法是:
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 ...创建您的吊舱,那么我认为这个问题会被发现,并带有错误消息。
https://stackoverflow.com/questions/33128963
复制相似问题