Implantar Playwright em VPS com um Runtime Pré-instalado

Implante o Playwright em um VPS com Node.js e runtime Chromium pré-instalados, em seguida, execute testes, salve relatórios, rastreie falhas e atualize com segurança.

VoyraCloud
13 de agosto de 2026
17 min Tempo de leitura
Compartilhar:
deploy Playwright on VPS
Playwright application image
Playwright Chromium VPS
Playwright VPS
run Playwright on Linux
Implantar Playwright em VPS com um Runtime Pré-instalado

Implante o Playwright na infraestrutura VPS quando você precisar de um ambiente Linux persistente para testes de ponta a ponta, verificações de navegador agendadas, capturas de tela e fluxos de trabalho de navegador autorizados. A imagem do aplicativo Playwright da VoyraCloud fornece Node.js, Playwright, Chromium e as dependências necessárias do navegador Linux. Você se conecta via SSH, adiciona seu próprio projeto e executa o Chromium sem cabeça sem expor um serviço de controle de navegador à internet pública.


TL;DR

  • A imagem do Playwright da VoyraCloud é um runtime focado em SSH, não um painel de controle de navegador hospedado ou uma API de navegador remoto pública.
  • Node.js, Playwright, Chromium e as dependências do navegador Linux estão pré-instaladas no Ubuntu, para que você possa começar com o exemplo fornecido e depois adicionar seu próprio projeto.
  • A imagem não abre uma porta pública específica do Playwright. Relatórios e rastros permanecem no VPS, a menos que você os transfira ou sirva deliberadamente.
  • Mantenha o pacote Playwright do seu projeto na mesma versão exata que os binários do navegador fornecidos. Uma incompatibilidade de versão pode impedir que o Playwright encontre ou inicie o Chromium.
  • Execute trabalhos de navegador como um usuário não root com o sandbox do Chromium disponível. Não armazene credenciais de terceiros diretamente em arquivos de origem ou relatórios.
  • A porta de recursos inicial segue os planos de produto disponíveis: 4 vCPU, 4 GB de RAM e 80 GB de armazenamento no Cloud VPS, ou 2 vCPU, 4 GB de RAM e 60 GB de armazenamento no Residential IP VPS, com um ambiente de memória compartilhada de 2 GB para uma sessão validada do Chromium. Não é uma promessa de concorrência fixa.
  • Os arquivos do projeto e os artefatos salvos persistem após uma reinicialização normal do VPS. Sessões de navegador em memória, contextos temporários e estado não salvo não persistem.

O que a imagem do aplicativo Playwright inclui?

A imagem do aplicativo Playwright inclui o runtime do navegador necessário para iniciar trabalhos de automação autorizados, enquanto o código do seu projeto e as práticas operacionais permanecem sob seu controle. Ela remove a preparação repetitiva do sistema operacional, mas não fornece um serviço de automação gerenciado.

Fornecido pela imagemGerenciado pelo usuário ou não incluído
Runtime do Ubuntu LinuxSeu código de aplicativo e teste
Ambiente Node.js compatívelDependências npm específicas do projeto
Uma versão estável fixa do PlaywrightAtualizações automáticas do Playwright
Binário do navegador Chromium correspondenteFirefox ou WebKit, a menos que você os instale e valide
Dependências necessárias do navegador LinuxContas de terceiros, cookies, chaves de API ou credenciais de destino
Execução de navegador sem cabeça via SSHPonto de controle de navegador público ou painel da Web
Ambiente de memória compartilhada de 2 GB validado para a porta inicialCapacidade de navegador paralelo garantida
Armazenamento VPS persistenteBackup automático fora do servidor
Um exemplo fornecido e verificação de saúdeDesenvolvimento de script personalizado ou depuração pela VoyraCloud

Os detalhes dos recursos mostram a versão do Playwright entregue quando o VPS foi criado. Esse valor descreve o estado original da imagem; não muda automaticamente se você atualizar seu próprio projeto posteriormente. Mantenha seu arquivo de bloqueio de dependências e notas operacionais como a fonte da verdade para mudanças subsequentes gerenciadas pelo usuário.


Início Rápido: Como implantar o Playwright no VPS

O caminho mais rápido é criar um VPS com a imagem do Playwright, conectar via SSH, verificar o runtime fornecido e executar um teste do Chromium com um único trabalhador. Não há painel de controle do navegador para abrir após a provisão.

  1. Abra a página do Playwright da VoyraCloud e continue para o fluxo de compra.
  2. Selecione um plano de Cloud VPS ou Residential IP VPS elegível, em seguida, escolha qualquer região atualmente oferecida por esse produto.
  3. Confirme que o Playwright está selecionado na seção Imagens, crie o recurso e aguarde até que a provisão seja concluída.
  4. Abra os detalhes do recurso e use as informações de conexão SSH exibidas.
  5. Após o login, verifique as versões do Node.js e do Playwright entregues:
node --version
npx playwright --version
  1. Execute o exemplo fornecido com a imagem antes de alterar as dependências. O exemplo deve iniciar o Chromium, abrir uma página de teste, fazer uma asserção e escrever uma captura de tela.
  2. Crie ou transfira seu próprio projeto somente após a verificação de saúde fornecida ser bem-sucedida.
  3. Comece com um trabalhador do Chromium, inspecione o uso de memória e disco e aumente a carga de trabalho somente após medir o projeto real.

A imagem não requer uma URL de acesso específica do Playwright. SSH é o caminho de gerenciamento, e nenhuma porta de controle remoto permanente é habilitada por padrão.


Como você cria um projeto Playwright no VPS?

Crie um projeto Node.js normal e fixe sua dependência do Playwright na versão exata mostrada pelo runtime fornecido. Os pacotes do Playwright e os binários do navegador se movem juntos, portanto, instalar um pacote mais recente não relacionado pode quebrar uma imagem de outra forma saudável.

Comece em um diretório de propriedade do seu usuário não root:

mkdir -p ~/playwright-project
cd ~/playwright-project
npm init -y

Verifique a versão fornecida novamente:

npx playwright --version

Instale a mesma versão exata no projeto. Substitua <same-version> pelo número impresso pelo comando anterior:

npm install --save-dev @playwright/test@<same-version>

Crie homepage.spec.js:

const { test, expect } = require('@playwright/test');

test('a página de exemplo é acessível', async ({ page }) => {
  await page.goto('https://example.com/', {
    waitUntil: 'domcontentloaded',
  });

  await expect(page).toHaveTitle(/Exemplo de Domínio/);
  await page.screenshot({
    path: 'artifacts/example-homepage.png',
    fullPage: true,
  });
});

Crie uma pequena configuração em playwright.config.js:

const { defineConfig, devices } = require('@playwright/test');

module.exports = defineConfig({
  testDir: '.',
  outputDir: 'test-results',
  workers: 1,
  reporter: [['list'], ['html', { open: 'never' }]],
  use: {
    trace: 'retain-on-failure',
    screenshot: 'only-on-failure',
    ...devices['Desktop Chrome'],
  },
  projects: [
    {
      name: 'chromium',
      use: { browserName: 'chromium' },
    },
  ],
});

Crie o diretório de capturas de tela e execute o teste:

mkdir -p artifacts
npx playwright test homepage.spec.js --project=chromium --workers=1

Este exemplo usa deliberadamente um trabalhador do Chromium e uma página de exemplo pública neutra. Substitua a URL apenas por um site que você possua, opere ou esteja autorizado a testar. A imagem não concede permissão para automatizar um serviço de terceiros.


Como funcionam relatórios e rastros em um VPS sem cabeça?

Relatórios e rastros do Playwright são arquivos gerados pelo seu projeto, portanto, podem ser salvos no VPS e revisados sem abrir um serviço público permanente. Eles são especialmente úteis quando um teste falha apenas no ambiente do servidor.

A configuração de exemplo escreve:

  • Resultados do terminal do repórter list.
  • Um relatório HTML sob playwright-report/.
  • Anexos de teste e saída de falha sob test-results/.
  • Um rastro para testes falhados porque trace está definido como retain-on-failure.
  • Capturas de tela sob os locais de artefato configurados.

Para visualizar o relatório HTML com segurança, inicie seu servidor temporário na interface de loopback:

npx playwright show-report --host 127.0.0.1 --port 9323

No seu próprio computador, crie um túnel SSH usando os valores de conexão dos detalhes do recurso:

ssh -L 9323:127.0.0.1:9323 <ssh-user>@<server-ip>

Em seguida, abra http://127.0.0.1:9323 no seu computador local. Pare o processo do relatório quando terminar. Não vincule o visualizador de relatórios a 0.0.0.0 ou exponha-o diretamente à internet; relatórios podem conter texto de página, URLs, capturas de tela, cabeçalhos, mensagens de erro e outras evidências de teste sensíveis.

Para um rastro salvo, use o visualizador de rastros do Playwright:

npx playwright show-trace test-results/<trace-file>.zip

Se o visualizador iniciar um processo HTTP local, use o mesmo modelo de loopback e túnel SSH. Você também pode transferir um rastro para uma estação de trabalho confiável e inspecioná-lo com ferramentas oficiais. Trate os arquivos de rastros como potencialmente sensíveis, pois podem conter instantâneas do DOM, informações de rede e capturas de tela.


Por que as versões do Playwright e do Chromium devem corresponder?

O Playwright espera binários de navegador construídos para sua própria versão, portanto, o pacote e a revisão do Chromium fornecida devem permanecer alinhados. A documentação oficial do Playwright recomenda fixar versões exatas e alerta que ambientes incompatíveis podem não conseguir localizar executáveis de navegador.

AlteraçãoAbordagem seguraRisco a evitar
Adicionar Playwright a um novo projetoInstalar a versão exata fornecidaInstalar uma versão mais recente não relacionada
Atualizar o pacote PlaywrightAtualizar os binários do navegador na mesma janela de manutençãoAtualizar apenas dependências npm
Mudar Node.jsConfirmar se a versão alvo do Playwright a suportaAtualizar Node.js sem testar
Adicionar Firefox ou WebKitInstalar e validar o navegador correspondente e as dependênciasAssumir que todos os navegadores estão pré-instalados
Reconstruir um arquivo de bloqueioRevisar a versão do Playwright resolvidaDeixar um amplo intervalo semver se desviar
ReverterRestaurar o bloqueio de pacotes, os binários do navegador e o projeto juntosReverter apenas uma camada

Antes de atualizar, registre as versões em funcionamento:

node --version
npx playwright --version
npm ls @playwright/test

Em seguida, faça backup do seu projeto e do arquivo de bloqueio. Siga o procedimento de atualização oficial do Playwright, que atualiza tanto o pacote quanto as dependências do navegador. Execute o padrão de verificação de saúde fornecido e seus próprios testes de fumaça após a alteração. A VoyraCloud não atualiza automaticamente ambientes existentes do Playwright ou garante compatibilidade para combinações gerenciadas pelo usuário.


Como o Playwright deve ser executado de forma segura?

O Playwright deve ser executado como um usuário dedicado não root com o sandbox do Chromium disponível, credenciais mínimas e nenhum ouvinte público desnecessário. Um navegador processa conteúdo complexo das páginas que abre, portanto, não deve receber mais privilégios de host do que o trabalho exige.

Use estas regras operacionais:

  1. Execute comandos do projeto a partir de uma conta não root. Não use sudo npx playwright test.
  2. Mantenha o sandbox do Chromium habilitado em vez de confiar na execução root que o desabilita.
  3. Armazene segredos em um arquivo de ambiente restrito ou gerenciador de segredos, não em fonte de teste, capturas de tela, relatórios ou histórico de shell.
  4. Limite os domínios de destino a sistemas que você possui ou tem permissão para testar.
  5. Interrompa em CAPTCHAs, desafios de controle de acesso, avisos de conta, portões de pagamento ou falhas de autorização repetidas.
  6. Mantenha o acesso SSH protegido com autenticação forte e atualizações de segurança do sistema operacional atuais.
  7. Não exponha o relatório HTML, visualizador de rastros, pontos de depuração ou um servidor de navegador personalizado à internet pública.
  8. Revise os artefatos gerados antes de compartilhá-los, pois o conteúdo da página e os dados de teste podem aparecer em capturas de tela e rastros.

A orientação oficial do Docker do Playwright faz a mesma distinção de privilégios: root pode ser aceitável para código de teste de ponta a ponta confiável em um ambiente contido, enquanto usuários separados e controles de sandbox são recomendados quando o conteúdo do navegador não é totalmente confiável. A imagem da VoyraCloud usa um runtime nativo focado em SSH; se você colocar seu projeto em um contêiner posteriormente, deve configurar o usuário, sandbox, processo de inicialização e memória compartilhada desse contêiner você mesmo.


O que significa o requisito de 2 GB de memória compartilhada?

O requisito de 2 GB de memória compartilhada dá ao Chromium espaço para uma carga de trabalho inicial validada, mas não garante um número específico de páginas ou navegadores paralelos. O Chromium usa memória compartilhada para processos de renderização, e espaço insuficiente pode causar falhas que parecem falhas de teste aleatórias.

Verifique o sistema de arquivos de memória compartilhada disponível:

df -h /dev/shm

A porta de aceitação da imagem da VoyraCloud valida uma sessão do Chromium sem cabeça na configuração inicial com um ambiente de memória compartilhada de 2 GB. Sua demanda real depende da complexidade da página, captura de vídeo e rastros, contextos de navegador, extensões, downloads, dados de teste e o número de trabalhadores simultâneos.

Se você criar sua própria implantação Docker mais tarde, a configuração do host não garante automaticamente que um novo contêiner receba a mesma concessão. Configure o contêiner com base na orientação oficial do Chromium para o Playwright, e teste-o de forma independente.


Quanta capacidade de VPS o Playwright precisa?

A capacidade do Playwright depende do número de navegadores, complexidade da página, artefatos e concorrência, portanto, o mínimo é apenas uma porta de entrada validada para uma carga de trabalho estreita. A porta de compra inicial é de 4 vCPU, 4 GB de RAM e 80 GB de armazenamento no Cloud VPS, ou 2 vCPU, 4 GB de RAM e 60 GB de armazenamento no Residential IP VPS, após o plano correspondente passar nos testes de aceitação regional.

Carga de trabalhoOrientação de capacidade
Um teste de fumaça do Chromium agendadoCaso inicial adequado para a porta de entrada
Um pequeno conjunto de testes de ponta a ponta em sérieComece com um trabalhador e meça
Testes pesados em capturas de telaObserve o crescimento do disco e o uso de memória
Retenção de vídeo e rastrosPlaneje armazenamento adicional e limpeza
Múltiplos trabalhadores paralelosRequer testes específicos de carga de trabalho e provavelmente mais recursos
Múltiplos navegadores ou páginas grandesRequer testes específicos de carga de trabalho
Serviço de automação de longa duraçãoAdicione supervisão, registro, monitoramento e capacidade medida

O Playwright Test pode executar arquivos em paralelo, mas uma contagem padrão de trabalhadores não é uma promessa de capacidade. Comece com --workers=1, observe CPU, memória, memória compartilhada, duração do teste e uso de disco, e depois aumente gradualmente. Um plano maior pode ser necessário antes de habilitar projetos paralelos, vídeos ou retenção de rastros grandes.


O que persiste após uma reinicialização?

Arquivos gravados no armazenamento persistente do VPS permanecem após uma reinicialização normal, enquanto o estado do navegador ativo na memória não persiste. Salve todos os artefatos ou arquivos de estado que importam antes de reiniciar o servidor.

Arquivos persistentes podem incluir:

  • Seu projeto Node.js e arquivo de bloqueio.
  • Configuração do Playwright e fonte de teste.
  • Capturas de tela, vídeos, relatórios HTML e arquivos de rastros.
  • Arquivos de estado de armazenamento salvos deliberadamente.
  • Seus próprios logs e configuração de processo.

Não espere que uma reinicialização preserve:

  • Um processo do Chromium em execução.
  • Páginas abertas ou contextos de navegador em memória.
  • Cookies não salvos, armazenamento local ou estado JavaScript.
  • Arquivos temporários que seu projeto exclui ou grava fora de caminhos persistentes.
  • Um trabalho que estava em execução sem supervisão de processo e gerenciamento de reinicialização.

A persistência não é backup. Se um relatório, projeto ou arquivo de estado for importante para o negócio, copie-o para um destino fora do servidor com a criptografia e retenção apropriadas. Evite fazer backup do estado de autenticação, a menos que seja necessário, protegido e sujeito a uma política de rotação clara.


Cloud VPS ou Residential IP VPS para Playwright?

Cloud VPS é a escolha principal para desenvolvimento geral do Playwright, QA e automação autorizada, enquanto Residential IP VPS é relevante apenas quando uma origem de rede residencial estável faz parte de um requisito de teste legítimo.

Use Cloud VPS para:

  • Testes de ponta a ponta contra aplicativos que você possui.
  • Verificações de fumaça de produção agendadas.
  • Fluxos de trabalho internos de navegador.
  • Geração de capturas de tela e testes de regressão.
  • Automação onde a identidade da rede do datacenter é aceitável.

Um Residential IP VPS pode ser relevante para QA regional ou monitoramento autorizado onde a mesma identidade de rede residencial estável deve ser mantida entre execuções. Não é uma promessa de contornar controles anti-automação, resolver CAPTCHAs, proteger contas ou alcançar todos os alvos. Para uma discussão mais profunda sobre falhas relacionadas à rede, leia Por que o Playwright é bloqueado no VPS.


Lista de Verificação de Pré-Produção

Um VPS do Playwright está pronto para uso regular apenas após o runtime, segurança, comportamento de recursos, artefatos e caminho de recuperação terem sido testados com seu próprio projeto.

  1. Confirme node --version e npx playwright --version.
  2. Execute a verificação de saúde do Chromium fornecida sem modificar o ambiente.
  3. Fixe a mesma versão do Playwright no seu arquivo de bloqueio do projeto.
  4. Execute como um usuário não root e confirme que o Chromium inicia com seu sandbox.
  5. Comece com um trabalhador do Chromium e verifique o ambiente de memória compartilhada de 2 GB.
  6. Salve uma captura de tela, relatório HTML e rastro de falha.
  7. Visualize relatórios através de um ouvinte de loopback e túnel SSH.
  8. Reinicie o VPS e execute novamente o teste de fumaça.
  9. Confirme que os arquivos e artefatos do projeto necessários persistiram.
  10. Configure backups fora do servidor para código e dados críticos para os negócios.
  11. Proteja credenciais e remova segredos de relatórios antes de compartilhar.
  12. Documente alvos permitidos, limites de taxa e condições de parada.

FAQ

A imagem do Playwright inclui um painel da Web?

Não, a imagem do Playwright não inclui um painel da Web ou ponto de controle de navegador público. Você se conecta via SSH e executa seu próprio projeto Node.js ou Playwright Test. Visualizadores de relatórios temporários devem se vincular a 127.0.0.1 e ser acessados através de um túnel SSH.

Qual navegador está incluído?

A imagem inclui o Chromium correspondente à versão estável do Playwright fornecida. Firefox e WebKit não fazem parte da entrega padrão declarada. Você pode instalar navegadores correspondentes adicionais, mas deve validar suas dependências e uso de recursos.

Posso atualizar o Playwright com npm?

Sim, mas atualize o pacote Playwright e seus binários de navegador juntos, e depois reteste o ambiente. Salve a versão em funcionamento e o arquivo de bloqueio primeiro. Recursos existentes da VoyraCloud não são atualizados automaticamente após a criação.

Quantos trabalhadores do Playwright este VPS pode executar?

Não há garantia fixa de trabalhadores ou concorrência. A porta inicial valida uma sessão do Chromium com 2 GB de memória compartilhada em qualquer Cloud VPS com 4 vCPU, 4 GB de RAM e 80 GB de armazenamento, ou Residential IP VPS com 2 vCPU, 4 GB de RAM e 60 GB de armazenamento. A capacidade paralela depende das suas páginas, artefatos, código e comportamento do runtime.

Relatórios e rastros estão disponíveis após uma reinicialização?

Arquivos de relatório e rastro salvos persistem quando são gravados no armazenamento do VPS, mas sessões ativas e estado não salvo não persistem. A persistência também não substitui um backup fora do servidor.

Devo executar o Playwright como root?

Não, use um usuário não root para trabalhos normais de navegador e mantenha o sandbox do Chromium disponível. A execução como root aumenta o impacto de uma violação do navegador ou código de teste e pode desabilitar o sandbox do Chromium em configurações comuns.

A imagem inclui proxies, cookies ou contas de site?

Não, a imagem não inclui nenhum serviço de proxy, cookies, chaves de API, contas de site ou credenciais de terceiros. Você é responsável por segredos, permissões, políticas de destino e leis aplicáveis.

O Playwright pode contornar CAPTCHAs ou controles anti-bot?

Nenhuma capacidade ou resultado desse tipo está incluído ou prometido. Um CAPTCHA, restrição de acesso ou falha de autorização repetida deve interromper o fluxo de trabalho para revisão. Use APIs oficiais ou autorização por escrito onde disponível.


Conclusão

Para implantar o Playwright no VPS de forma confiável, comece com o runtime pré-instalado, fixe seu projeto na versão do Playwright fornecida, execute um trabalhador do Chromium em sandbox e preserve apenas os arquivos que você salvar intencionalmente. A imagem da VoyraCloud encurta a configuração do ambiente enquanto mantém o acesso SSH, código do projeto, credenciais, atualizações, planejamento de capacidade e backups sob seu controle.

Use a imagem do aplicativo Playwright da VoyraCloud para um runtime de automação de navegador focado em SSH, sem porta pública específica do Playwright habilitada por padrão.


Fontes Oficiais

Compartilhar:

Artigos relacionados