Tender: alternativa open source ao Docker Desktop no WSL 2
Tender é um aplicativo open source em beta para administrar Docker e Kubernetes no Windows e no WSL 2.
O Tender é um aplicativo desktop open source, licenciado sob MIT, que se conecta a um Docker Engine já instalado para administrar recursos de Docker e Kubernetes por uma interface gráfica. Criado para quem desenvolve no Windows e usa Docker no WSL 2, o projeto está em beta, na versão 0.8.
Recursos para Docker e Kubernetes
No Docker, o aplicativo permite visualizar e administrar containers, imagens, volumes e projetos Docker Compose. Também oferece acompanhamento de logs em tempo real com busca, filtros e exportação, métricas de CPU, memória, rede e I/O, além de terminais para acessar containers.
Para investigar imagens sem shell próprio, incluindo imagens distroless e scratch, o Tender inclui um shell de depuração baseado em BusyBox. No Kubernetes, usa os contextos do kubeconfig para gerenciar Pods, Deployments, Jobs, CronJobs, Ingresses e Secrets, além de exibir eventos, manifests YAML e histórico de rollouts.
A integração com Kubernetes também oferece rollback e port forwarding. Para clusters identificados como produção, operações que alteram recursos exigem confirmação adicional. Ao consultar Secrets, o aplicativo mostra somente os nomes das chaves e não exibe seus valores.
Integração com Windows e WSL 2
O Tender se comunica com o Docker Engine executado dentro do WSL 2 sem exigir uma porta TCP exposta ou mudanças na configuração da distribuição Linux. O projeto também disponibiliza o named pipe padrão \\.\pipe\docker_engine para ferramentas Windows que esperam encontrar o Docker nesse endereço.
Entre as ferramentas compatíveis citadas estão Docker CLI (docker.exe), a extensão Docker do VS Code, Testcontainers e IDEs JetBrains. O aplicativo também inclui recursos para identificar e recuperar espaço consumido pelo WSL em memória, discos virtuais e cache de build, além de uma função de migração de containers, imagens e volumes do Docker Desktop.
Uma tela de Checkup verifica componentes como WSL, Docker Engine, DNS e ferramentas do Windows e apresenta orientações para corrigir problemas encontrados. Assim, o diagnóstico fica reunido no aplicativo, junto aos recursos usados para administrar containers e ambientes Kubernetes.
Arquitetura e testes
A aplicação usa Electron 44, React 18 e TypeScript, com Dockerode para falar com o Docker Engine e @kubernetes/client-node para a integração com Kubernetes. A persistência local de preferências, endpoints, notificações e histórico usa SQLite por meio de node:sqlite.
O renderer roda em sandbox e não acessa diretamente os recursos do processo principal. As chamadas passam por uma API restrita exposta pelo preload, com verificação da origem e validação de argumentos via Zod antes de chegar ao Docker ou ao Kubernetes.
O modo npm run dev:design permite desenvolver a interface em um navegador com um Docker Engine simulado, sem exigir Docker instalado na máquina. O autor também relata testes Playwright, incluindo verificações de acessibilidade com axe; no CI, os testes de integração Kubernetes usam um cluster real criado com kind.
Disponibilidade e cuidados no beta
O projeto está disponível para Windows e Linux; no macOS, é necessário compilar a partir do código-fonte. Os instaladores ainda não têm assinatura de código, então o Windows SmartScreen pode mostrar um aviso na primeira execução, segundo as informações do projeto.
Cada release inclui um arquivo SHA256SUMS.txt para conferir a integridade dos downloads. No Windows, a verificação indicada é feita com o comando abaixo, substituindo o marcador pela versão correspondente do instalador:
Get-FileHash .\Tender-Setup-<versão>.exe -Algorithm SHA256
Planos e contribuições
Entre as ideias que o autor pretende desenvolver estão o gerenciamento de networks, a criação de imagens a partir de Dockerfiles, a inicialização de projetos com arquivos compose.yaml e a integração com Trivy para análise de vulnerabilidades sem login. Essas funcionalidades são planos futuros, não recursos já disponíveis.
O desenvolvedor, jlbraga, convida usuários de Docker no WSL 2 a testar o beta, enviar sugestões, abrir issues e contribuir com o repositório do Tender no GitHub, publicado sob licença MIT. O repositório também oferece uma aba Security para reportar vulnerabilidades de forma privada.
Informações deste conteúdo
Tecnologias: Docker, Electron, Kubernetes, React, TypeScript, WSL 2
Carreiras: Administrador de Containers, Analista de Testes de Software, Desenvolvedor de Aplicações Desktop, Especialista em Infraestrutura Open Source, Especialista em Kubernetes
Idiomas: Português
Tags: api, containers, docker, kubernetes, linux, react, typescript, windows