Imagem base para suites E2E em Python com Playwright e pytest. Inclui ferramentas WireGuard para cenarios opcionais de VPN; o codigo dos testes e montado pelo consumidor em runtime.
| Item | Valor |
|---|---|
| Imagem | lzocateli/playwright-e2e:0.1.0 |
| Imagem base | mcr.microsoft.com/playwright/python:v1.49.0-noble |
| Plataformas | linux/amd64 |
| Usuario padrao | root (necessario somente para VPN) |
| Entry point | uv run --frozen pytest --confcutdir=/app |
| Diretorio de trabalho | /app |
| Codigo-fonte | https://github.com/lzocateli/containers/tree/main/playwright-e2e |
| Documentacao | https://github.com/lzocateli/containers/tree/main/playwright-e2e |
pytest-playwright, pytest-html e pytest-xdist.uv 0.5.18 e utilitarios WireGuard, DNS e rede.Monte a suite em /app e preserve o caminho de relatorios gravavel:
docker pull lzocateli/playwright-e2e:0.1.0
docker run --rm \
--volume "$(pwd)/tests:/app/tests:ro" \
--volume "$(pwd)/src:/app/src:ro" \
--volume "$(pwd)/reports:/app/reports" \
lzocateli/playwright-e2e:0.1.0 \
--base-url=https://example.com
Para usar uma configuracao WireGuard montada em /app/vpn/configs, adicione --cap-add=NET_ADMIN --device=/dev/net/tun. Essas permissoes nao sao necessarias para execucoes sem VPN.
services:
e2e:
image: lzocateli/playwright-e2e:0.1.0
volumes:
- /caminho/absoluto/testes:/app/tests:ro
- /caminho/absoluto/src:/app/src:ro
- /caminho/absoluto/reports:/app/reports
- /caminho/absoluto/vpn-configs:/app/vpn/configs:ro
cap_add:
- NET_ADMIN
devices:
- /dev/net/tun
command: ["--base-url=https://example.com"]
| Variavel | Obrigatoria | Secreta | Padrao | Descricao |
|---|---|---|---|---|
PYTHONPATH | Nao | Nao | /app/src | Caminho para modulos da suite montada. |
Nenhuma porta publica faz parte do contrato desta imagem.
| Caminho no conteiner | Modo | Conteudo | Backup necessario |
|---|---|---|---|
/app/tests | ro | Testes pytest | Sim, no repositorio consumidor |
/app/src | ro | Fixtures, plugins e utilitarios | Sim, no repositorio consumidor |
/app/reports | rw | Relatorios HTML e videos | Sim, conforme politica da suite |
/app/vpn/configs | ro | Configuracoes WireGuard | Sim, de forma segura |
Forneca credenciais via secrets do orquestrador ou --env-file. Arquivos WireGuard sao sensiveis e devem ser montados somente em runtime, nunca copiados para a imagem.
O entrypoint executa pytest com o diretorio de configuracao em /app. O comando padrao usa http://host.containers.internal:1313 como URL base e pode ser substituido por argumentos pytest. A imagem nao possui health check pois e um processo de curta duracao, nao um servico de rede.
root para permitir wg-quick quando a VPN estiver habilitada; execute sem NET_ADMIN e sem dispositivo TUN quando ela nao for necessaria./app/reports.docker build --pull --tag lzocateli/playwright-e2e:0.1.0 playwright-e2e
| Tag | Mutabilidade | Compatibilidade | Uso recomendado |
|---|---|---|---|
0.1.0 | Imutavel | Playwright 1.49.0 e Python 3.12 | CI e suites compativeis |
Nao ha tag movel publicada. Atualizacoes de Playwright, Python ou do entrypoint requerem uma nova tag imutavel.
Antes da publicacao, confirme:
docker buildx build --check --file playwright-e2e/Dockerfile playwright-e2e;linux/amd64;bash playwright-e2e/scripts/smoke-test.sh --image lzocateli/playwright-e2e:0.1.0;.env, secrets e .git do contexto;Use Actions > Publicar imagem de container > Run workflow com:
context_path: playwright-e2e;image_name: playwright-e2e;image_tag: 0.1.0;dockerfile: Dockerfile;platforms: linux/amd64.Preserve os relatorios no volume do host. Para atualizar, publique uma nova tag, execute a suite em homologacao e reverta a referencia da imagem da suite consumidora caso necessario.
| Sintoma | Causa provavel | Verificacao | Correcao |
|---|---|---|---|
permission denied ao conectar VPN | Capacidade de rede ausente | conferir cap_add e /dev/net/tun | adicionar NET_ADMIN e o dispositivo TUN |
| Relatorio nao e criado | /app/reports nao esta gravavel | verificar o bind mount | conceder escrita ao diretorio de relatorios |
| Browser nao inicia | Sandbox ou recursos insuficientes | revisar logs do pytest | executar no runtime Docker suportado e revisar limites |
linux/amd64.| Componente | Versao | Licenca | Fonte |
|---|---|---|---|
| Conteudo original deste repositorio | Atual | MIT | https://github.com/lzocateli/containers |
| Playwright | 1.49.0 | Apache-2.0 | https://playwright.dev/ |
| pytest | 8.3.4 | MIT | https://pytest.org/ |
| uv | 0.5.18 | MIT ou Apache-2.0 | https://github.com/astral-sh/uv |
O badge MIT descreve somente o conteudo original deste repositorio. Componentes de terceiros permanecem sujeitos aos seus termos e avisos de licenca. Consulte a politica de licenciamento.
0.1.0: primeira imagem base migrada do projeto playwright-e2e.Content type
Image
Digest
sha256:d5f0ba3dd…
Size
1 GB
Last updated
about 1 month ago
docker pull lzocateli/playwright-e2e:0.1.0