Resposta rápida: A recomendação é começar pelo plano VPS Brasil Básico (4 GB, 4 vCPUs, 100 GB NVMe, R$99/mês) e validar o fluxo real com curl -fsS http://127.0.0.1:7700/health. O tamanho correto depende de dados, concorrência e retenção; os comandos abaixo mostram como medir sem inventar uma métrica que não foi coletada.
Veja a infraestrutura: VPS para Docker, Portainer e Coolify para colocar este projeto no ar.
Meilisearch em VPS funciona melhor quando você separa o serviço público da operação interna: neste roteiro, o ponto de partida é uma VPS com 4 GB de RAM, 4 vCPUs e 100 GB NVMe para o cenário indicado. A primeira verificação usa curl -fsS http://127.0.0.1:7700/health e o objetivo é deixar claro o que pode ser afirmado, o que precisa ser medido e como voltar atrás. O conteúdo é para equipes pequenas e profissionais de infraestrutura e não apresenta teste executado na infraestrutura do leitor como resultado garantido.
O que este cenário resolve
Manter a api de indexação privada e separar busca pública de operações administrativas. A decisão central é tratar busca textual self-hosted para uma aplicação web como uma operação completa: aplicação, dados, identidade, logs, atualização e recuperação precisam ter responsáveis e sinais observáveis.
A pergunta operacional
Antes de instalar, escreva qual pergunta você quer responder. Em um catálogo que pode consultar índices, mas não deve criar, apagar ou reprocessar documentos, não basta saber que o processo subiu: você precisa verificar o caminho que o usuário ou o operador realmente usará. Isso evita transformar um painel carregado, um handshake recente ou um backup verde em prova de saúde completa.
O que fica fora do escopo
Este artigo não promete latência, disponibilidade, throughput ou taxa de entrega sem medição local. Versões, plugins, tamanho dos dados, regras de rede e padrão de uso mudam o resultado. Use o procedimento como base, registre as saídas e só então ajuste o plano ou a configuração.
Recursos, portas e plano inicial
Para o recorte deste guia, o ponto inicial é o VPS Brasil Básico, com 4 GB, 4 vCPUs, 100 GB NVMe e preço de catálogo de R$99/mês. A porta ou portas relevantes são 7700 internamente; publique apenas a aplicação ou proxy autenticado. Esses valores descrevem o catálogo e o desenho do laboratório; não são um benchmark do serviço.
O que medir no host
Registre RAM disponível, uso de CPU, espaço e inodes, processos, conexões e I/O antes e durante a operação. Para busca textual self-hosted para uma aplicação web, a medida mais útil é a que aparece na jornada central: fila e worker, consulta e restauração, resposta HTTP, rota privada ou evento de auditoria. Um número isolado não explica uma degradação.
Quando subir de plano
Considere o VPS Brasil Performance quando o conjunto pedir 12 GB e 6 vCPUs por causa de múltiplos serviços, dados persistentes ou tarefas concorrentes; o catálogo informa 150 GB NVMe e R$169/mês. O VPS Brasil Ultra oferece 20 GB, 8 vCPUs e 200 GB NVMe por R$269/mês. A troca deve seguir métricas e um plano de janela, não uma promessa genérica.
Comparação de escolhas
A comparação abaixo reduz uma decisão ampla a quatro camadas. Em busca textual self-hosted para uma aplicação web, a opção mais simples pode ser correta para um laboratório, mas a operação comercial exige atenção a persistência, acesso, evidência e retorno.
| Camada | Função | Decisão | Cuidado |
|---|---|---|---|
| Busca pública | consultar índice | chave limitada | sem escrita |
| Indexador | criar/atualizar | worker privado | reprocessamento controlado |
| Painel/API | administração | loopback ou VPN | não expor token mestre |
| Persistência | índice | volume | reindexar a partir da fonte |
Passo a passo verificável
Execute uma etapa por vez e guarde a saída com data, versão, host e contexto. O comando de referência é curl -fsS http://127.0.0.1:7700/health, mas o critério de sucesso é o fluxo completo, não o fato de o comando existir.
- Modele documentos, filtros e o processo de reindexação antes de subir o serviço.
- Crie chaves separadas para busca e administração, monte volume persistente e não publique 7700 diretamente.
- Indexe um conjunto de teste, compare resultados esperados e pratique apagar e recriar o índice.
1. Prepare o ambiente
Modele documentos, filtros e o processo de reindexação antes de subir o serviço.
docker run -d --name meilisearch --restart=unless-stopped -p 127.0.0.1:7700:7700 -v meili_data:/meili_data getmeili/meilisearch:latest
2. Aplique a configuração
Crie chaves separadas para busca e administração, monte volume persistente e não publique 7700 diretamente.
curl -fsS http://127.0.0.1:7700/health
curl -fsS http://127.0.0.1:7700/indexes
3. Valide e registre
Indexe um conjunto de teste, compare resultados esperados e pratique apagar e recriar o índice.
docker logs --tail=100 meilisearch
docker inspect meili_data
Erros comuns e como evitá-los
Erros operacionais quase sempre aparecem na fronteira entre camadas. Revise estes pontos antes de considerar o trabalho concluído:
Usar a chave mestre no navegador
Evite usar a chave mestre no navegador. Primeiro reduza a superfície exposta e confirme a rota de administração. Um serviço pode continuar funcionando em loopback ou rede privada sem uma porta pública adicional.
Expor 7700 em 0.0.0.0
Não expor 7700 em 0.0.0.0. Persistência, cópia independente e restauração são controles diferentes. Registre o arquivo, volume ou destino que realmente contém a informação necessária.
Indexar dados pessoais sem política de remoção
Também não indexar dados pessoais sem política de remoção. Faça a mudança com versão, janela, healthcheck e retorno documentado. Se houver migração irreversível, trate isso como uma decisão separada.
Não guardar a fonte original para reconstruir o índice
Por fim, não não guardar a fonte original para reconstruir o índice. A validação deve representar o uso real, incluindo falha, reinício, permissão e dependência. Caso contrário, você só confirmou que o processo iniciou.
Practical evidence, limites e rollback
A evidência deste roteiro é uma procedimento reprodutível: ambiente Linux, comandos explícitos, versões e dados devem ser registrados por quem executar o teste. O resultado a observar em busca textual self-hosted para uma aplicação web é o estado de cada etapa, a saída do comando e a resposta do fluxo central. Este lote não executou esses comandos na VPS do leitor, portanto não transforma o procedimento em medição de desempenho.
Antes de uma mudança, copie configuração e dados de forma recuperável. Depois, compare o estado esperado com o estado observado e preserve o último release ou dump válido. Se algo falhar, interrompa, restaure o componente anterior quando isso for seguro e reexecute o healthcheck. Não apague evidências durante o diagnóstico.
Checklist de aceite
Confirme nome e versão do software, portas públicas, permissões, volumes, espaço, logs, backup e caminho de recuperação. Registre o horário e o operador. Um checklist curto, repetível e ligado ao cenário é mais útil que uma promessa de disponibilidade sem método.
Perguntas relacionadas
Estas respostas condensam as dúvidas que normalmente aparecem antes do corte e apontam para a verificação que falta em cada uma.
Meilisearch em VPS funciona em uma VPS pequena?
Pode funcionar para um cenário enxuto, mas a decisão depende de RAM, CPU, armazenamento, concorrência e dependências. Comece com o plano VPS Brasil Básico e valide o fluxo real antes de ampliar.
Qual porta deve ficar pública?
Somente a porta necessária para o usuário ou túnel. Neste cenário, as portas relevantes são 7700 internamente; publique apenas a aplicação ou proxy autenticado; componentes administrativos, bancos e filas devem ficar em loopback, VPN ou rede privada quando possível.
Como comprovar que a configuração funcionou?
Combine curl -fsS http://127.0.0.1:7700/health, logs e um teste de jornada. Registre status, versão, tempo, permissões e resultado. Um processo ativo isoladamente não comprova que a integração, os dados ou o rollback estão corretos.
Quando devo fazer upgrade?
Quando a medição mostrar pressão persistente, fila crescendo, OOM, I/O ou falta de margem para manutenção. Compare com o VPS Brasil Performance ou o VPS Brasil Ultra usando os recursos de catálogo, sem tratar preço como prova de desempenho.
Próximo passo
Se o seu cenário cabe no recorte deste artigo, o próximo passo é provisionar o VPS Brasil Básico (4 GB, 4 vCPUs, 100 GB NVMe, R$99/mês), executar o checklist em staging e registrar o resultado antes do corte. Conheça o VPS Brasil Básico e escolha a capacidade pelo uso observado.
Comentários (4)
Excelente artigo! Como sysadmin, confirmo que essas configurações realmente fazem diferença. Só gostaria de adicionar que o ajuste do swappiness também ajuda muito no uso de memória.
Estou usando essa configuração no meu servidor há 2 meses e realmente melhorou a performance! O tempo de resposta caiu de 200ms para 30ms. Vou implementar também as dicas de otimização que você mencionou. Será que isso funciona também com ambientes híbridos?
Sempre tive problemas com instabilidade no servidor até ler este artigo. Segui passo a passo e agora está rodando perfeitamente há 3 semanas sem restart.
A latência para o Brasil ficou excelente depois que migramos para a VPS local. O tutorial de configuração de rede e MTU foi direto ao ponto. Tem algum repositório GitHub de referência com esse setup?