Plausible Analytics em Servidor Próprio: Privacidade e Dados

11 min de leitura Análise de Dados e BI
Plausible Analytics em Servidor Próprio: Privacidade e Dados

Plausible Analytics é uma ferramenta de análise de web open-source, leve e focada na privacidade. Diferente do Google Analytics, o Plausible não utiliza cookies e rastreia visitantes sem violar a LGPD (Lei Geral de Proteção de Dados) ou regulamentações europeias como o GDPR. Para empresas e desenvolvedores que buscam uma alternativa google analytics ética, simples e auto-hospedada, instalar o Plausible em um servidor próprio é a escolha ideal.

Este tutorial guia você pela instalação completa do Plausible em uma VPS Linux (Ubuntu/Debian), configurando o banco de dados, o backend, o frontend e a coleta de dados via Docker Compose. Ao final, você terá um painel de self-hosted analytics rodando com total controle sobre seus dados.

1. Pré-requisitos e Infraestrutura

Antes de iniciar o processo de instalação do plausible analytics servidor próprio, é fundamental garantir que o ambiente esteja preparado. O Plausible depende de três componentes principais: PostgreSQL (banco de dados), Redis (cache) e a própria aplicação (backend/frontend).

Você precisará dos seguintes itens:

  • Uma VPS ou servidor dedicado com Ubuntu 20.04/22.04 ou Debian 11/12.
  • Acesso root ou usuário com privilégios sudo.
  • Docker e Docker Compose instalados na máquina.
  • Um domínio apontando para o IP do servidor (ex: analytics.seudominio.com).
  • Portas 8000 (backend), 80 (frontend) e 5432 (postgres) liberadas no firewall local.

Se você ainda não possui Docker, execute os comandos abaixo para instalá-lo:

sudo apt update
sudo apt install -y docker.io docker-compose-plugin
sudo systemctl enable --now docker

2. Preparando o Ambiente Docker

A melhor maneira de gerenciar as dependências do Plausible é utilizando um arquivo docker-compose.yml. Este arquivo define os serviços necessários e garante que eles inicializem na ordem correta.

Crie um diretório para a aplicação:

mkdir ~/plausible && cd ~/plausible

Agora, crie o arquivo docker-compose.yml. Este é o coração da sua instalação de self-hosted analytics.

version: '3.10'
services:
  db:
    image: postgres:15-alpine
    restart: always
    volumes:
      - db-data:/var/lib/postgresql/data
    environment:
      - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
      - POSTGRES_USER=${POSTGRES_USER}
      - POSTGRES_DB=${POSTGRES_DB}

  redis:
    image: redis:7-alpine
    restart: always

  app:
    image: ghcr.io/plausible/analytics:latest
    restart: always
    depends_on:
      - db
      - redis
    command: sh -c "wait-for-it db:5432 --timeout=300 && bin/plausible_migrate && bin/plausible"
    environment:
      - BASE_URL=${BASE_URL}
      - SECRET_KEY_BASE=${SECRET_KEY_BASE}
      - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
      - POSTGRES_USER=${POSTGRES_USER}
      - POSTGRES_DB=${POSTGRES_DB}
      - PLAUSIBLE_HOSTNAME=${PLAUSIBLE_HOSTNAME}
    ports:
      - "8000:8000"

  ingestor:
    image: ghcr.io/plausible/analytics:latest
    restart: always
    depends_on:
      - db
      - redis
    command: sh -c "wait-for-it db:5432 --timeout=300 && bin/plausible-ingest"
    environment:
      - BASE_URL=${BASE_URL}
      - SECRET_KEY_BASE=${SECRET_KEY_BASE}
      - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
      - POSTGRES_USER=${POSTGRES_USER}
      - POSTGRES_DB=${POSTGRES_DB}
      - PLAUSIBLE_HOSTNAME=${PLAUSIBLE_HOSTNAME}

volumes:
  db-data:

Note que o arquivo utiliza variáveis de ambiente. Você não deve definir essas chaves diretamente no arquivo yml, mas sim em um arquivo .env na mesma pasta para maior segurança.

3. Configurando Variáveis de Ambiente

Crie um arquivo chamado .env no mesmo diretório do docker-compose.yml. Este arquivo armazenará as credências e configurações críticas.

# Gera uma chave secreta segura para a aplicação
SECRET_KEY_BASE=$(openssl rand -base64 32)

# Configurações do Banco de Dados
POSTGRES_USER=plausible
POSTGRES_PASSWORD=senha_forte_aqui
POSTGRES_DB=plausible_db

# Configurações da URL
BASE_URL=https://analytics.seudominio.com
PLAUSIBLE_HOSTNAME=analytics.seudominio.com

Atenção: Substitua senha_forte_aqui por uma senha complexa e altere o domínio para o seu domínio real. O SECRET_KEY_BASE pode ser gerado automaticamente pelo comando openssl exibido acima ou você pode usar um gerador online seguro.

4. Inicializando a Aplicação

Com os arquivos configurados, inicie os containers do Docker:

docker-compose up -d

O processo de inicialização pode levar alguns minutos. O serviço app executará as migrações do banco de dados automaticamente na primeira vez. Para verificar se tudo está rodando corretamente, use:

docker-compose ps

Todos os serviços (db, redis, app, ingestor) devem aparecer como "Up". Se algum estiver falhando, verifique os logs com docker-compose logs app.

5. Configurando o Nginx como Reverse Proxy

Para acessar o Plausible via HTTPS (obrigatório para cookies e segurança moderna), precisamos configurar um servidor web reverso. O Nginx é a escolha padrão na indústria.

Instale o Nginx:

sudo apt install nginx -y

Crie um arquivo de configuração no diretório /etc/nginx/sites-available/plausible:

server {
    listen 80;
    server_name analytics.seudominio.com;

    # Redireciona todo o tráfego HTTP para HTTPS
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl http2;
    server_name analytics.seudominio.com;

    ssl_certificate /etc/letsencrypt/live/analytics.seudominio.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/analytics.seudominio.com/privkey.pem;

    # Configurações de segurança SSL
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;

    location / {
        proxy_pass http://localhost:8000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

    # Configuração para o script de ingestão (coleta de dados)
    location /api/send {
        proxy_pass http://localhost:8000/api/send;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

Ative a configuração e teste o Nginx:

sudo ln -s /etc/nginx/sites-available/plausible /etc/nginx/sites-enabled/
sudo nginx -t

Se o teste for bem-sucedido, reinicie o serviço:

sudo systemctl restart nginx

6. Configurando SSL com Let's Encrypt

Para garantir a segurança e evitar avisos de "Site não seguro" nos navegadores dos seus visitantes, instale certificados SSL gratuitos via Certbot.

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d analytics.seudominio.com

O Certbot irá detectar a configuração do Nginx e perguntará se deseja redirecionar para HTTPS. Escolha a opção 2 (Redirecionar). Ele também renova os certificados automaticamente.

7. Acessando o Painel e Criando Conta Admin

Agora, abra seu navegador e acesse https://analytics.seudominio.com. Você verá a tela de login do Plausible.

Na primeira vez, clique em "Register" para criar sua conta de administrador. Preencha o nome, email e senha. Após o cadastro, faça login com suas credenciais.

8. Adicionando um Site e Configurando o Rastreamento

Dentro do painel do Plausible, vá em "Settings" > "Add Website". Insira o nome do site (ex: Meu Blog) e o domínio (ex: meublog.com). O sistema gerará automaticamente um snippet de código JavaScript.

O código se parece com isto:

<script async defer data-domain="meublog.com" src="https://analytics.seudominio.com/js/plausible.js"></script>

Copie esse código e cole no cabeçalho (<head>) de todas as páginas do site que deseja monitorar. Se você usa WordPress, pode usar plugins como "Insert Headers and Footers" para adicionar o script globalmente.

9. Dashboards Self-Hosted: Entendendo os Dados

O Plausible oferece uma experiência de dashboards self-hosted limpa e intuitiva. Diferente do Matomo Analytics VPS, que pode ser pesado e complexo, o Plausible foca em métricas essenciais:

  • Páginas vistas: Total de visualizações.
  • Visitantes únicos: Contagem baseada em cookies locais (sem rastreamento cross-site).
  • Bounce Rate: Porcentagem de visitantes que saíram sem clicar em nada.
  • Duração média da visita: Tempo gasto no site.
  • Fontes de tráfego: De onde os visitantes vieram (Google, direto, redes sociais).

Uma vantagem crucial é a privacidade. O Plausible não armazena endereços IP completos nem utiliza cookies de rastreamento. Isso elimina a necessidade de banners de consentimento de cookies na maioria dos países europeus e no Brasil, simplificando a conformidade legal.

10. Backup e Manutenção

Para manter seus dados seguros, realize backups regulares do banco de dados PostgreSQL. Como você está usando Docker, pode parar o serviço app temporariamente para garantir uma cópia consistente, ou usar a ferramenta pg_dump.

Criar um backup manual é simples:

docker-compose exec db pg_dump -U plausible plausible_db > /backup/plausible_backup_$(date +%F).sql

Para automação, configure um script cron que execute esse comando diariamente e envie o arquivo para um armazenamento externo (como S3 ou outro servidor).

11. Plausible vs Outras Alternativas: Umami e Matomo

Muitos sysadmins avaliam várias opções antes de decidir. O Matomo Analytics VPS é extremamente poderoso, mas consome muitos recursos (CPU/RAM) devido à sua complexidade e funcionalidades extras. Para a maioria dos projetos pessoais ou empresas de médio porte, o Plausible é mais leve.

O Umami Analytics VPS é outra alternativa moderna e leve, escrita em Node.js. Enquanto o Umami é excelente e muito simples, o Plausible (escrito em Elixir) oferece um ecossistema maduro, plugins de WordPress robustos e uma comunidade ativa. A escolha entre eles muitas vezes depende da preferência pela stack tecnológica (Elixir vs Node.js) ou funcionalidades específicas de relatórios.

No entanto, ao optar pelo plausible analytics servidor próprio, você garante que os dados nunca saem do seu controle, evitando a dependência de terceiros para insights cruciais sobre o desempenho do seu negócio digital.

12. Conclusão e Próximos Passos

Instalar o Plausible é um investimento em privacidade e soberania de dados. Com menos de 50MB de RAM em uso na maioria dos casos, ele roda confortavelmente em VPSs básicas.

Próximos passos recomendados:

  1. Configure alertas de email para picos de tráfego ou erros críticos.
  2. Integre o Plausible com ferramentas de BI (como Metabase) exportando dados via API se necessário para análises profundas.
  3. Monitore o uso de disco do volume db-data.

Agora que você domina a instalação e configuração, explore as configurações avançadas de eventos personalizados e funis de conversão disponíveis no painel. Seu servidor está pronto para transformar visitantes em dados acionáveis, sem comprometer a privacidade.

Esse tutorial foi útil?

Comentários (0)

Seja o primeiro a comentar.

Deixe seu comentário

Seu comentário será analisado antes de ser publicado.

0/2000