Ambiente isolado baseado em Ubuntu 24.04 LTS com Warsaw, Google Chrome, uma automação Python/Zendriver, sessão MATE mínima e acesso web pelo noVNC. A sessão instala apenas Marco, painel, gerenciador de sessão e daemon de configurações do MATE. Nada é instalado no sistema operacional do host.
- Docker com o plugin Compose
- Navegador web no host
./run.shAcesse http://127.0.0.1:6080/vnc.html e use a senha bbwarsaw.
Para definir outra senha e resolução:
VNC_PASSWORD='outrasenha' VNC_GEOMETRY=1600x900 ./run.shO protocolo VNC usa no máximo os primeiros oito caracteres da senha. O acesso
web é publicado apenas em 127.0.0.1; não fica disponível para outras máquinas
da rede.
O Zendriver abre o Chrome automaticamente em
https://www.licitacoes-e.com.br/aop/index.jsp e clica em Sala de disputa.
O navegador continua visível no MATE para informar a chave de acesso.
Warsaw e Chrome rodam no mesmo container. O entrypoint inicia tanto o serviço
Warsaw de sistema quanto a instância do usuário gráfico, espera a porta
127.0.0.1:30900, importa a CA pessoal no NSS do Chrome e valida o endpoint TLS
antes de iniciar o Zendriver. A porta do Warsaw não é exposta no host.
Uma política do Chrome libera acesso à rede loopback apenas para a origem
https://www.licitacoes-e.com.br, evitando a confirmação manual no primeiro
uso de um perfil novo.
O healthcheck só fica saudável depois que a automação confirma a tela de login da Sala de disputa com os campos de chave J e senha de autoatendimento.
O perfil do navegador fica no volume Docker chrome-data, preservando o
cadastro do dispositivo sem criar um diretório de dados no projeto.
Os ajustes de execstack e dos atributos imutáveis dos binários do Warsaw
foram baseados na dica de Hisham Muhammad no artigo
Configuração do Warsaw para acessar o Banco do Brasil no Linux em 2026.
Este projeto adapta essa configuração para o ambiente isolado em Docker e
acrescenta MATE, TigerVNC, noVNC e a automação com Zendriver.
docker compose logs -f bb
docker compose exec bb tail -f /tmp/browser-automation.log
docker compose exec bb ss -ltnp
docker compose exec bb ps aux
docker compose downPara apagar também o perfil do Chrome:
docker compose down -vCopyright (C) 2025-2026 Gustavo Freitas.
O código-fonte original deste repositório é distribuído sob a GNU Affero
General Public License, versão 3 ou posterior (AGPL-3.0-or-later). Consulte
o arquivo LICENSE para os termos completos e o arquivo
NOTICE para a delimitação dos componentes de terceiros.
Ubuntu, Google Chrome, Warsaw, Zendriver, MATE, TigerVNC, noVNC e demais dependências mantêm seus próprios titulares e termos de licença. A licença deste repositório não altera nem substitui esses termos. Antes de publicar ou redistribuir uma imagem Docker já construída, confira as licenças e termos dos binários incluídos nela.