Kubernetes: как запустить приложение в контейнере с привилегиями root - PullRequest
0 голосов
/ 23 сентября 2019

Я настраиваю kubernetes с мастером и узлом на одном и том же оборудовании (ubuntu 18), используя это учебное пособие .

Докер Kubernetes 1.15.3 19.03.2

КонтейнерЯ создал программу для эмуляции, для которой нужны права суперпользователя с правами записи в каталог / proc / sys / kernelКогда kubernetes запускает контейнер, я получаю сообщение об ошибке внутри служебного скрипта /etc/init.d/myservicescript, указывающее, что он не может записать в / proc / sys / kernel / xxx.Контейнер работает в Ubuntu 14.

Я пытался установить «runAsUser: 0» в файле yaml модуля

Я пытался установить «USER 0» в Dockerfile

Ни работа.Любое предложение о том, как заставить это работать?

1 Ответ

0 голосов
/ 23 сентября 2019

Смена пользователя внутри контейнера не дает вам никаких привилегий на хосте.Чтобы получить повышенные привилегии, вы должны установить privileged: true в контексте безопасности.

Например:

apiVersion: v1
kind: Pod
metadata:
  name: busybox
spec:
  containers:
  - name: busybox
    image: busybox
    args:
    - sleep
    - "999"
    securityContext:
      privileged: true
...