[Ubuntu] Configurações e precauções para executar o docker sem o comando sudo
Uma nota sobre como habilitar o docker sem sudo ao usar o docker no Ubuntu.
Acionar
Depois de instalar o docker, como estásudo
Quando verifiquei a operação sem um comando, ocorreu um erro.
#Run a partir do docker do terminal Ubuntu, execute o hello-world
docker: permissão negada ao tentar conectar ao socket daemon Docker em unix: ///var/run/docker.sock: Post http: //%2Fvar%2Frun%2Fdocker.sock/v1.39/containers/create: disque unix /var/run/docker.sock: conectar: permissão negada.Veja 'execução doocker –help'.
Parece que o acesso ao daemon docker foi negado. Digitei sudo docker run hello-world e funcionou.
A causa do erro parece ser os seguintes motivos.
O Docker se comunica com um daemon (dockerd) em execução com privilégios de root via soquete unix ou tcp / ip, mas você precisa pertencer ao grupo docker ou ter privilégios de root para acessar o dockerd.
Entenda os perigos de adicionar usuários a um grupo do docker com o Docker
Ao adicionar o comando sudo, os usuários gerais podem executar comandos que não podem ser executados sem privilégios de root (como conectar-se a um daemon).Mas adicionar sudo todas as vezes é entediante.
Contramedidas e precauções
Uma maneira de executar sem o sudo é fazer com que o usuário pertença ao grupo dokcer (geralmente pesquisado no Google), mas também parece haver um problema de segurança.
Referência: risco ao conceder privilégios de root no grupo docker (documento oficial)
Se você quiser usar o docker sem sudo, newgrp
Diz-se que é melhor pertencer temporariamente a um grupo ou espaço de nomes de usuário.
sudo groupadd docker # $ USER com nome de usuário sudo usermod -aG docker $ USER newgrp docker docker execute hello-world
Olá do Docker!
Esta mensagem mostra que sua instalação parece estar funcionando corretamente.
Para gerar essa mensagem, o Docker realizou as seguintes etapas:
1. O cliente Docker contatou o daemon Docker.
2. O daemon do Docker extraiu a imagem “hello-world” do Docker Hub.
(amd64)
3. O daemon do Docker criou um novo contêiner a partir dessa imagem que executa o
executável que produz a saída que você está lendo no momento.
4. O daemon Docker transmitiu essa saída para o cliente Docker, que a enviou
para o seu terminal.
Para tentar algo mais ambicioso, você pode executar um contêiner Ubuntu com:
$ docker run -it ubuntu bash
Compartilhe imagens, automatize fluxos de trabalho e muito mais com um Docker ID gratuito: https://hub.docker.com/
Para mais exemplos e ideias, visite:
https://docs.docker.com/get-started/
discussão
Lista de comentários
Ainda não há comentários