Primeiro commit

This commit is contained in:
2025-10-14 14:04:17 -03:00
commit 33d8645eb4
109 changed files with 55424 additions and 0 deletions

173
deploy-completo-servidor.sh Executable file
View File

@@ -0,0 +1,173 @@
#!/bin/bash
# 🚀 Deploy COMPLETO: PC → Servidor Limpo
# Este script envia TUDO do seu PC para o servidor
# Execute: ./deploy-completo-servidor.sh
echo "🚀 DEPLOY COMPLETO - Liberi Kids"
echo "================================"
# Cores para output
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
RED='\033[0;31m'
NC='\033[0m'
log() {
echo -e "${GREEN}[✅ OK]${NC} $1"
}
warn() {
echo -e "${YELLOW}[⚠️ WARN]${NC} $1"
}
info() {
echo -e "${BLUE}[ INFO]${NC} $1"
}
error() {
echo -e "${RED}[❌ ERRO]${NC} $1"
}
# Configurações do servidor
SERVER_IP="192.168.195.145"
SERVER_USER="tiago"
SERVER_PATH="/home/tiago/app_estoque"
echo ""
info "📋 ESTE SCRIPT VAI ENVIAR:"
echo " 📁 Todos os arquivos do projeto"
echo " 🔧 Configurações e credenciais"
echo " 📦 Frontend compilado"
echo " 🏦 Configurações PIX"
echo " 🗄️ Scripts SQL"
echo " 📚 Documentação completa"
echo ""
read -p "Continuar com o deploy completo? (s/N): " confirma
if [[ $confirma != "s" && $confirma != "S" ]]; then
error "❌ Deploy cancelado!"
exit 1
fi
echo ""
info "🔨 PREPARANDO DEPLOY..."
# Verificar se o build existe
if [ ! -d "client/build" ]; then
info "🏗️ Compilando frontend..."
cd client
npm run build
cd ..
log "✅ Frontend compilado"
fi
# Criar diretório temporário para deploy
TEMP_DIR="/tmp/liberi-deploy-$(date +%s)"
mkdir -p $TEMP_DIR
echo ""
info "📦 CRIANDO PACOTE DE DEPLOY..."
# Copiar arquivos essenciais
cp -r client/build $TEMP_DIR/
cp server-supabase.js $TEMP_DIR/
cp package.json $TEMP_DIR/
cp -r config $TEMP_DIR/
cp .env $TEMP_DIR/ 2>/dev/null || cp .env.example $TEMP_DIR/.env
# Copiar scripts e documentação
cp *.sh $TEMP_DIR/ 2>/dev/null || true
cp *.md $TEMP_DIR/ 2>/dev/null || true
cp *.sql $TEMP_DIR/ 2>/dev/null || true
# Criar estrutura de diretórios
mkdir -p $TEMP_DIR/uploads
mkdir -p $TEMP_DIR/logs
log "✅ Pacote criado: $TEMP_DIR"
echo ""
info "🌐 ENVIANDO PARA SERVIDOR..."
# Enviar tudo via rsync
rsync -avz --progress $TEMP_DIR/ $SERVER_USER@$SERVER_IP:$SERVER_PATH/
log "✅ Arquivos enviados"
echo ""
info "📦 INSTALANDO DEPENDÊNCIAS NO SERVIDOR..."
# Instalar dependências
ssh $SERVER_USER@$SERVER_IP "cd $SERVER_PATH && npm install"
log "✅ Dependências instaladas"
echo ""
info "🔧 CONFIGURANDO SERVIDOR..."
# Configurar permissões
ssh $SERVER_USER@$SERVER_IP "cd $SERVER_PATH && chmod +x *.sh"
# Verificar se .env existe
ssh $SERVER_USER@$SERVER_IP "cd $SERVER_PATH && [ ! -f .env ] && cp .env.example .env || true"
log "✅ Servidor configurado"
echo ""
info "🚀 INICIANDO APLICAÇÃO..."
# Iniciar com PM2
ssh $SERVER_USER@$SERVER_IP "cd $SERVER_PATH && pm2 start server-supabase.js --name liberi-kids"
ssh $SERVER_USER@$SERVER_IP "pm2 save"
log "✅ Aplicação iniciada"
echo ""
info "🧪 TESTANDO SERVIDOR..."
# Aguardar inicialização
sleep 3
# Testar se está respondendo
if ssh $SERVER_USER@$SERVER_IP "curl -s http://localhost:5000 > /dev/null"; then
log "✅ Servidor respondendo"
else
warn "⚠️ Servidor pode não estar respondendo"
fi
# Limpar arquivos temporários
rm -rf $TEMP_DIR
echo ""
log "🎉 DEPLOY COMPLETO FINALIZADO!"
echo ""
info "📋 RESUMO DO DEPLOY:"
echo " ✅ Arquivos enviados: $(ssh $SERVER_USER@$SERVER_IP "cd $SERVER_PATH && find . -type f | wc -l") arquivos"
echo " ✅ Dependências: Instaladas"
echo " ✅ PM2: Configurado"
echo " ✅ Servidor: Rodando"
echo ""
info "🌐 ACESSO:"
echo " Frontend: http://$SERVER_IP:5000"
echo " Status: pm2 status"
echo " Logs: pm2 logs liberi-kids"
echo ""
info "🔧 COMANDOS ÚTEIS NO SERVIDOR:"
echo " ssh $SERVER_USER@$SERVER_IP"
echo " cd $SERVER_PATH"
echo " pm2 restart liberi-kids"
echo " pm2 logs liberi-kids"
echo ""
warn "💡 LEMBRE-SE:"
echo " - Configure credenciais no .env se necessário"
echo " - Aplique SQL no Supabase se for primeira vez"
echo " - Teste todas as funcionalidades"
echo ""
log "✨ SEU PROJETO ESTÁ NO AR!"