Atualiza scripts e configurações do projeto para melhorar o gerenciamento de projetos e a estrutura do repositório

This commit is contained in:
2026-04-18 14:45:51 -05:00
parent 9cc146348f
commit 163b89aca5
11 changed files with 304 additions and 93 deletions

View File

@@ -1,4 +1,7 @@
#!/bin/bash
# start.sh — entrypoint do container
# NÃO apaga projetos nem configs existentes — só sobe o que falta
PROJECTS_DIR="${PROJECTS_DIR:-/home/deploy/projects}"
BASE_PORT="${BASE_PORT:-3000}"
@@ -25,12 +28,11 @@ for project_dir in "$PROJECTS_DIR"/*/; do
if [ -f "$project_dir/dist/main.js" ]; then
echo " → Subindo $project na porta $port"
# Salva porta
echo "$port" > "$project_dir/.port"
# Recria config nginx SE não existir
# Recria config nginx SOMENTE se não existir
if [ ! -f "/etc/nginx/sites-dynamic/${project}.conf" ]; then
echo "Recriando config nginx para $project"
echo "Criando config nginx para $project"
cat > "/etc/nginx/sites-dynamic/${project}.conf" <<EOF
location /${project}/ {
proxy_pass http://localhost:${port}/;
@@ -45,14 +47,14 @@ location /${project}/ {
EOF
fi
# Sobe no PM2 se não estiver rodando
if ! pm2 describe "$project" > /dev/null 2>&1; then
# Sobe no PM2 se não estiver rodando, senão reinicia
if pm2 describe "$project" > /dev/null 2>&1; then
pm2 restart "$project"
else
pm2 start "$project_dir/dist/main.js" \
--name "$project" \
--env production \
-- --port "$port"
else
pm2 restart "$project"
fi
else
echo "$project sem build — rode: ./host-deploy.sh $project"
@@ -62,7 +64,7 @@ EOF
done
nginx -s reload 2>/dev/null || true
echo "✓ Nginx atualizado"
echo "✓ Nginx atualizado com rotas dos projetos"
pm2 save 2>/dev/null || true
@@ -72,4 +74,4 @@ echo " Stack pronta!"
echo " Acesse: http://${DOMAIN:-localhost}/<projeto>"
echo "================================================"
pm2 logs --raw
pm2 logs --raw