Índice do artigo
Implante o Appsmith em seu VPS: A Alternativa Self-Hosted para Criação de Aplicações Internas
Este guia ensina como hospedar o Appsmith, uma robusta plataforma de desenvolvimento de aplicações internas low-code, em seu próprio servidor VPS. Com Appsmith, você pode construir dashboards, ferramentas administrativas e fluxos de trabalho complexos sem escrever uma única linha de código, diretamente em sua infraestrutura. Assumiremos que você já decidiu pela automação e pela autonomia que uma ferramenta self-hosted como o Appsmith oferece, e agora busca a infraestrutura ideal para rodá-la. Para uma operação estável em produção, recomendamos um plano com no mínimo 4GB de RAM e 2 vCPUs, além de espaço em disco suficiente para o Docker, o próprio Appsmith e seu banco de dados. A instalação via Docker Compose no Ubuntu é o método mais recomendado pela sua simplicidade e reprodutibilidade.
Veja a infraestrutura: VPS para NocoDB no Brasil para colocar este projeto no ar.
Por que escolher Appsmith para Self-Hosting?
Enquanto plataformas como Retool oferecem soluções gerenciadas, o Appsmith se destaca por ser uma alternativa open-source e self-hosted. Isso significa que você tem controle total sobre seus dados, segurança e infraestrutura. Na Host You Secure, ajudamos clientes a otimizar o deploy dessas ferramentas, garantindo que elas rodem de forma eficiente e segura em nossos servidores. A capacidade de integrar com diversas fontes de dados (APIs REST, GraphQL, bancos de dados SQL e NoSQL) e a vasta biblioteca de widgets UI tornam o Appsmith uma escolha poderosa para quem busca autonomia e personalização.
Requisitos de Servidor para Appsmith em Produção
Hospedar o Appsmith de forma eficaz requer atenção aos recursos do servidor. Para um ambiente de produção que acomoda o Appsmith, seu banco de dados e um proxy reverso, recomendamos:
- RAM: Mínimo de 4GB. Para cargas de trabalho mais intensas ou múltiplos usuários simultâneos, 8GB ou mais são ideais.
- CPU: Mínimo de 2 vCPUs. Mais núcleos podem melhorar o desempenho em operações intensivas.
- Armazenamento: 20GB livres para o sistema operacional, Docker, imagens e volumes. Recomenda-se SSD para melhor performance.
- Sistema Operacional: Ubuntu 20.04 LTS ou superior é recomendado.
É crucial notar que estes são requisitos para a aplicação principal do Appsmith. Se você planeja conectar muitos bancos de dados ou rodar plugins que consomem muitos recursos, pode ser necessário um plano superior. Nossos clientes frequentemente utilizam o plano VPS Brasil Básico (R$ 99/mês, 4GB RAM, 4 vCPUs) para rodar stacks como esta com excelente performance.
Tutorial: Instalação do Appsmith em VPS com Docker Compose
A maneira mais direta de implantar o Appsmith é utilizando Docker e Docker Compose. Este método abstrai a complexidade da configuração manual e garante uma instalação consistente. Siga estes passos em seu servidor Ubuntu:
Passo 1: Pré-requisitos - Instalar Docker e Docker Compose
Certifique-se de que seu servidor possui o Docker e o plugin do Docker Compose instalados. Se ainda não os tem, execute os comandos abaixo. Estes comandos instalam as versões mais recentes e seguras suportadas oficialmente.
# Atualizar lista de pacotes
sudo apt update
# Instalar pacotes necessários para o repositório do Docker
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y
# Adicionar a chave GPG oficial do Docker
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# Adicionar o repositório do Docker
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Atualizar lista de pacotes novamente após adicionar o repositório
sudo apt update
# Instalar o Docker Engine, CLI, Containerd e o Docker Compose plugin
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y
# Verificar se a instalação do Docker foi bem-sucedida
docker --version
docker compose version
# Adicionar seu usuário ao grupo docker para evitar usar 'sudo' em todos os comandos
sudo usermod -aG docker $USER
newgrp docker # Aplica as mudanças do grupo ao terminal atual
# Testar se pode rodar sem sudo
docker run hello-world
Passo 2: Criar Diretório e Arquivo Docker Compose
Crie um diretório para o Appsmith e, dentro dele, o arquivo docker-compose.yml. Este arquivo definirá como o Appsmith e seu banco de dados (PostgreSQL, neste exemplo) serão executados como contêineres.
# Criar um diretório para o Appsmith
mkdir ~/appsmith
cd ~/appsmith
# Criar o arquivo docker-compose.yml
touch docker-compose.yml
Passo 3: Configurar o Arquivo docker-compose.yml
Edite o arquivo docker-compose.yml com o seguinte conteúdo. Este compose inclui o serviço do Appsmith e um serviço PostgreSQL para armazenamento de dados. Ajuste as variáveis de ambiente conforme necessário.
version: "3.8"
services:
appsmith:
image: appsmith/appsmith-ce:latest
container_name: appsmith
ports:
- "80:80"
- "192.168.1.100:8080:8080"
volumes:
- appsmith-data:/appsmith-stacks
- /etc/localtime:/etc/localtime:ro
environment:
APPSMITH_CUSTOM_DOMAIN: ""
APPSMITH_ENCRYPTION_PASSWORD: "YOUR_STRONG_ENCRYPTION_PASSWORD"
APPSMITH_ENCRYPTION_SALT: "YOUR_STRONG_ENCRYPTION_SALT"
APPSMITH_REDIS_URL: "redis://redis:6379/0"
APPSMITH_MONGO_TOTAL_COUNT_COLLECTION_NAME: "UsageSnapshots"
APPSMITH_MONGO_TOTAL_COUNT_COLLECTION_ENABLED: "true"
APPSMITH_LOG_LEVEL: "info"
APPSMITH_MONGODB_URL: "mongodb://mongo:27017/appsmith"
APPSMITH_TELEMETRY_DISABLED: "false"
APPSMITH_SUPER_USER_EMAIL: "[email protected]"
depends_on:
- mongo
restart: unless-stopped
mongo:
image: mongo:4.4
container_name: appsmith_mongo
volumes:
- appsmith-mongo-data:/data/db
environment:
MONGO_INITDB_ROOT_USERNAME: "admin"
MONGO_INITDB_ROOT_PASSWORD: "YOUR_STRONG_MONGO_PASSWORD"
restart: unless-stopped
volumes:
appsmith-data:
appsmith-mongo-data:
Importante: Substitua YOUR_STRONG_ENCRYPTION_PASSWORD, YOUR_STRONG_ENCRYPTION_SALT e YOUR_STRONG_MONGO_PASSWORD por senhas fortes e únicas. O `APPSMITH_SUPER_USER_EMAIL` será o e-mail do administrador. O APPSMITH_CUSTOM_DOMAIN pode ser deixado vazio se você for usar um proxy reverso.
Passo 4: Iniciar os Contêineres
Com o arquivo docker-compose.yml configurado, inicie os contêineres. Use o comando docker compose up -d para rodar em background.
# Navegue até o diretório onde o docker-compose.yml foi salvo
cd ~/appsmith
# Inicie os contêineres em modo detached (background)
docker compose up -d
Após alguns minutos, o Appsmith estará rodando. Você pode verificar o status dos contêineres com docker compose ps.
Passo 5: Configurar Proxy Reverso (Nginx)
Para acessar o Appsmith de forma segura e através de um domínio, é essencial configurar um proxy reverso. Usaremos Nginx para isso. Se você ainda não tem o Nginx instalado, pode fazê-lo com sudo apt install nginx.
Crie um novo arquivo de configuração para o Nginx:
sudo nano /etc/nginx/sites-available/appsmith
Adicione a seguinte configuração, substituindo seu_dominio.com pelo seu domínio ou IP público:
server {
listen 80;
server_name seu_dominio.com;
location / {
proxy_pass http://localhost:8080; # Porta que o Appsmith está expondo internamente
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;
}
}
Habilite o site e teste a configuração do Nginx:
# Criar um link simbólico para habilitar o site
sudo ln -s /etc/nginx/sites-available/appsmith /etc/nginx/sites-enabled/
# Remover o link padrão se ele existir e conflitar
sudo rm /etc/nginx/sites-enabled/default
# Testar a configuração do Nginx
sudo nginx -t
# Reiniciar o Nginx para aplicar as mudanças
sudo systemctl restart nginx
Agora você pode acessar o Appsmith através de http://seu_dominio.com. Lembre-se de configurar os registros DNS do seu domínio para apontar para o IP público do seu VPS.
Comparativo: Appsmith vs. Ferramentas No-Code Self-Hosted
Ao escolher uma ferramenta no-code para hospedar em seu VPS, o Appsmith se destaca, mas é útil compará-lo com outras opções populares no cenário self-hosted. Cada ferramenta tem seus pontos fortes, dependendo da necessidade específica.
| Recurso | Appsmith | NocoDB | Baserow | ToolJet |
|---|---|---|---|---|
| Foco Principal | Aplicações Internas (Dashboards, CRUD) | Banco de Dados como Interface (Spreadsheet/Airtable-like) | Banco de Dados Relacional No-Code (Airtable-like) | Aplicações Internas (Dashboards, CRUD) |
| Facilidade de Uso (Interface) | Alta (drag-and-drop UI) | Média (interface de planilhas/tabelas) | Alta (interface intuitiva de planilhas) | Alta (drag-and-drop UI) |
| Conectividade de Dados | Excelente (APIs, DBs, Cloud Services) | Boa (APIs REST, DBs) | Boa (APIs REST, DBs) | Excelente (APIs, DBs, Cloud Services) |
| Personalização de UI | Muito Alta | Média | Média | Muito Alta |
| Requisitos de Servidor (Mínimo) | 4GB RAM, 2 vCPUs | 2GB RAM, 1 vCPU (com MySQL/Postgres) | 2GB RAM, 1 vCPU (com Postgres) | 4GB RAM, 2 vCPUs |
| Comunidade/Suporte | Ativa (Slack, GitHub) | Ativa (GitHub, Forum) | Ativa (Slack, GitHub) | Ativa (Slack, GitHub) |
Erros Comuns ao Hospedar Appsmith e Como Evitá-los
Mesmo com um processo de instalação simplificado, alguns erros podem surgir. Estar ciente deles pode economizar muito tempo e frustração.
- Problemas de Rede/Acesso: Se você não consegue acessar o Appsmith após a instalação, verifique: o status dos contêineres com
docker compose ps, se as portas estão corretas nodocker-compose.ymle no arquivo de configuração do Nginx, e se o firewall do seu VPS permite tráfego nas portas 80 (HTTP) e 443 (HTTPS). Uma configuração incorreta do proxy reverso é a causa mais comum. - Consumo Excessivo de RAM: Se o Appsmith ou o contêiner do banco de dados estiverem consumindo muita memória e o serviço ficar instável, pode ser necessário um upgrade no plano do VPS. Certifique-se de que os requisitos mínimos de 4GB de RAM sejam atendidos, e considere mais se o uso for intenso. Verifique o uso de memória com
docker stats. - Falhas na Conexão com Banco de Dados: Erros de conexão com o PostgreSQL podem ocorrer se as credenciais (usuário, senha, host) no
docker-compose.ymldo Appsmith não baterem com as do contêiner do banco de dados. Verifique se oAPPSMITH_MONGODB_URL(ou equivalente para o DB usado) está correto e se o contêiner do banco de dados está rodando. - Senhas Fracas ou Padrão: Utilizar senhas genéricas para o Appsmith ou para o banco de dados é um risco de segurança. Sempre use senhas fortes e únicas, geradas aleatoriamente, e considere rotacioná-las periodicamente.
- Problemas com Domínio Personalizado/SSL: Se você planeja usar um domínio personalizado e SSL, o processo de configuração do Nginx é crucial. Certifique-se de que o DNS está apontando corretamente e que os certificados SSL (obtidos via Let's Encrypt, por exemplo) estão configurados no bloco
serverdo Nginx.
Para aprofundar este tema, consulte também: Budibase em VPS: Implante sua ferramenta low-code Directus em VPS: Deploy Rápido e Seguro (Passo a Passo).
Perguntas Relacionadas ao Appsmith em VPS
O Appsmith é realmente gratuito?
A versão Community Edition (CE) do Appsmith é open-source e gratuita para usar, inclusive para fins comerciais. Ela oferece todas as funcionalidades essenciais para a construção de aplicações internas. Versões Enterprise com recursos adicionais de segurança e colaboração estão disponíveis.
Qual a diferença entre Appsmith e Retool?
Ambos são excelentes para criar aplicações internas. A principal diferença é que o Appsmith é open-source e self-hosted, oferecendo mais controle e autonomia. O Retool, embora também tenha uma opção self-hosted, é primariamente uma plataforma SaaS gerenciada, o que pode ser mais conveniente para alguns, mas menos flexível para outros.
Posso usar Appsmith sem Docker?
Embora seja possível instalar o Appsmith manualmente, o uso de Docker e Docker Compose é altamente recomendado pela simplicidade, isolamento e facilidade de gerenciamento. A documentação oficial foca na abordagem via Docker.
Appsmith consome muitos recursos?
Em comparação com ferramentas muito simples, o Appsmith pode exigir mais recursos, especialmente se rodando com um banco de dados robusto e sob alta carga. Os requisitos mínimos de 4GB de RAM são um bom ponto de partida para uso moderado.
Conclusão e Próximos Passos
Hospedar o Appsmith em seu próprio VPS é um passo estratégico para empresas que buscam controle total sobre suas aplicações internas e dados. Seguindo este guia, você estará apto a implantar uma instância funcional do Appsmith em um servidor Ubuntu utilizando Docker Compose, e protegê-la com um proxy reverso Nginx. Lembre-se de monitorar os recursos do seu servidor para garantir a performance ideal.
Recomendação de Infraestrutura para Appsmith
Para rodar o Appsmith em produção de forma eficiente e sem preocupações com gargalos de performance, recomendamos o plano VPS Brasil Básico. Este plano oferece 4GB de RAM e 4 vCPUs, recursos suficientes para suportar o Appsmith, seu banco de dados e tráfego moderado. Nossos clientes rodam essa mesma stack em uma VPS Brasil Básico com sucesso. Invista na sua autonomia e produtividade:
Quero meu VPS Brasil Básico para rodar Appsmith agora! por R$ 99/mês
FAQ: perguntas frequentes
O que é o Appsmith e para que serve?
Appsmith é uma plataforma de desenvolvimento low-code open-source que permite criar interfaces de usuário para aplicações internas, dashboards, painéis administrativos e ferramentas de CRUD rapidamente. Ele se conecta a diversas fontes de dados como APIs, bancos de dados SQL e NoSQL, permitindo a visualização e manipulação de dados sem a necessidade de programação extensiva.
Quais são os requisitos mínimos para rodar Appsmith em um VPS?
Para um ambiente de produção estável, o Appsmith requer no mínimo 4GB de RAM e 2 vCPUs. Além disso, é recomendado ter cerca de 20GB de espaço em disco livre para o sistema operacional, Docker e os volumes de dados. Um sistema operacional Linux como o Ubuntu 20.04 LTS ou superior é ideal.
É obrigatório usar Docker para instalar o Appsmith?
Embora a instalação manual seja teoricamente possível, o uso de Docker e Docker Compose é fortemente recomendado. Essa abordagem simplifica significativamente o processo de instalação, garante isolamento dos serviços (Appsmith e banco de dados) e facilita a manutenção e atualizações futuras. A maioria dos tutoriais e da comunidade foca em deployments via Docker.
Como faço para acessar o Appsmith após instalar no VPS?
Após a instalação com Docker Compose, você geralmente acessará o Appsmith através de um endereço IP público do seu VPS ou de um domínio configurado. É altamente recomendável configurar um proxy reverso (como Nginx ou Caddy) para gerenciar o tráfego, adicionar certificados SSL (HTTPS) e expor a aplicação de forma segura e profissional.
Qual a diferença entre Appsmith Community Edition e Enterprise?
A Community Edition (CE) é a versão open-source e gratuita do Appsmith, ideal para a maioria dos casos de uso. A Enterprise Edition adiciona recursos avançados voltados para grandes organizações, como SSO (Single Sign-On), controle de acesso baseado em funções (RBAC) mais granular, auditoria e suporte empresarial dedicado.
Posso conectar o Appsmith a qualquer banco de dados?
Sim, o Appsmith oferece suporte nativo a uma vasta gama de fontes de dados, incluindo bancos de dados relacionais populares como PostgreSQL, MySQL, MS SQL Server, Oracle, e bancos NoSQL como MongoDB. Além disso, ele pode consumir APIs REST, GraphQL e serviços de nuvem. Essa flexibilidade o torna ideal para integrar sistemas existentes.
O Appsmith é mais adequado para desenvolvedores ou usuários sem código?
O Appsmith é projetado para ser utilizado tanto por desenvolvedores quanto por usuários com pouco ou nenhum conhecimento de programação. Desenvolvedores podem aproveitar sua flexibilidade para criar interfaces complexas rapidamente e integrá-las com lógica de backend customizada. Usuários menos técnicos podem se beneficiar do editor visual drag-and-drop para construir aplicações funcionais sem escrever código.
Como garanto a segurança da minha instância Appsmith auto-hospedada?
A segurança de uma instância auto-hospedada depende de várias camadas. Utilize senhas fortes para o Appsmith e para o banco de dados, configure um proxy reverso com HTTPS (SSL), mantenha o sistema operacional e o Docker atualizados, e configure as permissões de acesso adequadamente. Considere também a segmentação de rede e um firewall robusto no seu VPS.