Docker включено пространство имен пользователей, контейнер начинает выходить из строя - PullRequest
0 голосов
/ 01 августа 2020

OS: CentOs Когда я включаю пространство имен docker, я сталкиваюсь с приведенной ниже ошибкой при запуске контейнера

# docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
0e03bdcc26d7: Pull complete
Digest: sha256:49a1c8800c94df04e9658809b006fd8a686cab8028d33cfba2cc049724254202
Status: Downloaded newer image for hello-world:latest
docker: Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused "process_linux.go:319: getting the final child's pid from pipe caused \"EOF\"": unknown.

Ниже приведены настройки, которые я использовал

# id robot
uid=1000(robot) gid=1000(robot) groups=1000(robot)
# cat /etc/docker/daemon.json
{
  "userns-remap": "robot"
}

1 Ответ

1 голос
/ 01 августа 2020

Для пользователей вам также понадобятся записи в / etc / subuid и / etc / subgid для вашего пользователя и группы.

$ more /etc/subuid
robot:100000:65536

$ more /etc/subgid
robot:100000:65536

Вам также понадобится настройка sysctl для user.max_user_namespaces, которая будет достаточно большой :

$ echo "user.max_user_namespaces=15000" >> /etc/sysctl.conf
$ sysctl -p

Docker содержит более подробную информацию о проблемах, которые они видели в средах RHEL / CentOS, которые они видели: https://success.docker.com/article/user-namespace-runtime-error

...