Acesso ao Docker
Como o doknyu encontra o daemon do Docker e como liberar a permissão para o seu usuário.
O doknyu conversa com o daemon do Docker pelo socket Unix, do mesmo jeito que a CLI docker.
Ele não abre nenhuma conexão de rede.
Qual socket ele usa
Na ordem:
- Se a variável
DOCKER_HOSTestiver definida com um endereçounix://, só esse caminho é usado. - Senão, o socket padrão (rootful):
/var/run/docker.sock. - Se esse não existir, o socket do Docker rootless:
$XDG_RUNTIME_DIR/docker.sock.
Só sockets locais
Endereços tcp:// ou ssh:// em DOCKER_HOST não são suportados e são ignorados.
O caminho é resolvido de novo a cada tentativa, então um daemon que sobe depois que o app abriu é encontrado sem precisar reiniciar o doknyu.
Liberar a permissão
No Docker rootful, seu usuário precisa estar no grupo docker:
sudo usermod -aG docker $USERDepois saia da sessão e entre de novo (ou reinicie) para o grupo valer.
Isso equivale a acesso de root
Quem está no grupo docker consegue controlar o daemon e, por meio dele, a máquina inteira. É o
mesmo requisito de usar a CLI do Docker sem sudo. Se você prefere evitar isso, use o
Docker rootless: o doknyu encontra o socket dele
automaticamente.
O que o app mostra quando algo falta
Na primeira execução, se algo estiver errado, o doknyu explica o problema e mostra o comando para resolver:
| Situação | O que fazer |
|---|---|
| Docker não instalado | Instale o Docker Engine seguindo a documentação oficial. |
| Daemon parado | sudo systemctl start docker |
| Sem permissão no socket | sudo usermod -aG docker $USER e entre na sessão de novo |
| Outro erro | O app mostra um aviso simples e os detalhes técnicos |