Empresas de tecnologia, startups e desenvolvedores precisam de um ambiente seguro para testar aplicações web antes do lançamento. Um servidor de testes e staging permite simular o ambiente de produção, garantindo que as atualizações e novas funcionalidades sejam testadas antes de chegarem aos usuários finais.
✅ Neste artigo, você aprenderá a configurar um servidor de testes e staging em uma VPS ou Servidor Dedicado, garantindo segurança e eficiência no desenvolvimento.
📌 O Que é um Servidor de Testes e Staging?
Um servidor de testes (development) e um servidor de staging são ambientes criados para validar código antes de entrar em produção.
🔹 Servidor de Testes (Development) – Usado pelos desenvolvedores para testar novas funcionalidades e correções.
🔹 Servidor de Staging – Simula o ambiente de produção, permitindo testes finais antes do lançamento.
💡 Conclusão: Ter um ambiente de staging reduz riscos de bugs, falhas de segurança e impacto negativo nos usuários finais.
🔗 Precisa de um Servidor VPS para Staging? Veja Nossos Planos!
📌 Requisitos para um Servidor de Testes e Staging
Antes de configurar o servidor, defina os requisitos do ambiente:
Recurso | Especificação Recomendada |
---|---|
Sistema Operacional | Ubuntu 22.04 LTS ou CentOS 8 |
Servidor Web | Apache ou Nginx |
Banco de Dados | MySQL, MariaDB ou PostgreSQL |
Gerenciador de Versões | Git |
Deploy Automatizado | CI/CD com GitHub Actions, GitLab CI ou Jenkins |
💡 Conclusão: O ambiente deve ser o mais próximo possível do ambiente de produção para garantir testes eficazes.
📌 Passo a Passo: Configurando um Servidor de Testes e Staging
Agora, vamos configurar um servidor de testes e staging usando Nginx, Git e um banco de dados.
✅ 1. Instalando o Servidor Web (Apache ou Nginx)
🔹 No Ubuntu/Debian:
sudo apt update && sudo apt install -y nginx
🔹 No CentOS/RHEL:
sudo yum install -y nginx
🔹 Iniciar e ativar o Nginx:
sudo systemctl enable --now nginx
🔹 Criar diretório para os sites de testes e staging:
sudo mkdir -p /var/www/staging
sudo mkdir -p /var/www/testes
sudo chmod -R 755 /var/www/
✅ 2. Configurando Domínios para Staging e Testes
🔹 Criar arquivo de configuração para o site de staging:
sudo nano /etc/nginx/sites-available/staging.minhaempresa.com
🔹 Adicionar o seguinte conteúdo:
server {
listen 80;
server_name staging.minhaempresa.com;
root /var/www/staging;
index index.html index.php;
location / {
try_files $uri $uri/ =404;
}
}
🔹 Criar um link simbólico para ativar o site:
sudo ln -s /etc/nginx/sites-available/staging.minhaempresa.com /etc/nginx/sites-enabled/
🔹 Fazer o mesmo para o ambiente de testes:
sudo nano /etc/nginx/sites-available/testes.minhaempresa.com
server {
listen 80;
server_name testes.minhaempresa.com;
root /var/www/testes;
index index.html index.php;
location / {
try_files $uri $uri/ =404;
}
}
🔹 Ativar o ambiente de testes:
sudo ln -s /etc/nginx/sites-available/testes.minhaempresa.com /etc/nginx/sites-enabled/
🔹 Testar a configuração e reiniciar o Nginx:
sudo nginx -t
sudo systemctl restart nginx
💡 Agora os domínios staging.minhaempresa.com
e testes.minhaempresa.com
estão prontos para serem usados! 🚀
✅ 3. Instalando e Configurando o Banco de Dados (MySQL ou MariaDB)
🔹 Instalar o banco de dados:
sudo apt install -y mariadb-server # Ubuntu/Debian
sudo yum install -y mariadb-server # CentOS/RHEL
🔹 Iniciar o serviço e ativar no boot:
sudo systemctl enable --now mariadb
🔹 Criar um banco de dados e usuário para staging:
sudo mysql -u root -p
CREATE DATABASE staging_db;
GRANT ALL PRIVILEGES ON staging_db.* TO 'staging_user'@'localhost' IDENTIFIED BY 'SenhaForte';
FLUSH PRIVILEGES;
EXIT;
🔹 Criar outro banco de dados para testes:
CREATE DATABASE testes_db;
GRANT ALL PRIVILEGES ON testes_db.* TO 'testes_user'@'localhost' IDENTIFIED BY 'SenhaForte';
FLUSH PRIVILEGES;
EXIT;
💡 Agora cada ambiente tem um banco de dados isolado para evitar conflitos.
✅ 4. Configurando Git para Deploy Automatizado
🔹 Instalar o Git:
sudo apt install -y git # Ubuntu/Debian
sudo yum install -y git # CentOS/RHEL
🔹 Criar diretório para repositórios:
sudo mkdir -p /var/repo/staging
cd /var/repo/staging
git init --bare
🔹 Configurar o post-receive
para deploy automático:
nano /var/repo/staging/hooks/post-receive
🔹 Adicionar o seguinte script:
#!/bin/bash
GIT_WORK_TREE=/var/www/staging git checkout -f
🔹 Salvar e sair (Ctrl + X → Y → Enter).
🔹 Dar permissão de execução:
chmod +x /var/repo/staging/hooks/post-receive
💡 Agora, sempre que você enviar código para esse repositório, ele será automaticamente enviado para o ambiente de staging! 🚀
📌 Como Usar o Ambiente de Staging no Git?
🔹 Adicionar o repositório remoto:
git remote add staging ssh://user@IP_DO_SERVIDOR:/var/repo/staging
🔹 Enviar código para staging:
git push staging main
💡 Agora, sempre que fizer um push, o código será atualizado automaticamente!
📌 Conclusão: Seu Servidor de Testes e Staging Está Pronto! 🚀
Agora você tem um servidor seguro e otimizado para testar suas aplicações web antes do lançamento.
✅ Ambiente de Staging configurado corretamente
✅ Banco de dados separado para cada ambiente
✅ Deploy automático via Git
🔗 Precisa de um Servidor VPS para Desenvolvimento? Veja Nossos Planos!