Por que o Docker precisa de privilégios de root?

11

Estou aprendendo o Docker e gosto bastante.

No entanto, eu não entendo, por que o docker precisa de privilégios de root para criar contêineres, ler logs e assim por diante.

Eu li alguns artigos como este

https://docs.docker.com/articles/security/

mas tudo o que vejo lá é "o docker precisa de privilégios de root, porque pode ter acesso às pastas raiz". Bem, eu não me importaria de executar janelas de encaixe como não raiz e conceder acesso a pastas pertencentes a usuários não raiz no sistema externo.

Por que isso é um problema?

Karel Bílek
fonte

Respostas:

9

Alguns recursos do docker "legais", como ligação de portas, montagem de sistemas de arquivos etc., exigem estritamente que o docker.io daemon seja executado com privilégios de superusuário.

No entanto, você pode usar a docker ferramenta de linha de comando sem privilégios de root se o docker.iodaemon estiver ouvindo uma porta de rede ou se o soquete unix estiver acessível para o usuário ler e gravar.

É uma violação de segurança GRANDE e normalmente não deve ser usada.

Detalhes adicionais sobre a segurança do Docker: https://docs.docker.com/articles/security/

Sergey P. tcp azure
fonte