Add deploy.sh

This commit is contained in:
2026-06-01 16:33:19 -05:00
parent 7777df6a83
commit 2bb0cc6b94
2 changed files with 50 additions and 14 deletions
+6 -14
View File
@@ -1,17 +1,9 @@
FROM docker.io/nginx:alpine FROM alpine:latest
# Remove default nginx static assets WORKDIR /app
RUN rm -rf /usr/share/nginx/html/*
# Copy landing page files to nginx web root # El script le pasará los archivos clonados a esta carpeta
COPY index.html /usr/share/nginx/html/ COPY . /app
COPY styles.css /usr/share/nginx/html/
COPY script.js /usr/share/nginx/html/
COPY media /usr/share/nginx/html/media
# Optional: custom nginx config for SPA or security headers # Al arrancar, el contenedor vacía el volumen compartido y copia los archivos nuevos
# COPY nginx.conf /etc/nginx/conf.d/default.conf CMD rm -rf /publico/* && cp -r ./* /publico/ && echo "✅ Sitio web actualizado con éxito."
EXPOSE 8090
CMD ["nginx", "-g", "daemon off;"]
+44
View File
@@ -0,0 +1,44 @@
#!/bin/bash
# --- CONFIGURACIÓN ---
REPO_LOCAL="/home/ubuntu/gitea/gitea/git/repositories/silvioalzate/landing-cirux.git/"
DIR_BUILD="/tmp/build-landing-cirux"
RUTA_WEB_VPS="/var/www/mi-sitio-estatico"
# ---------------------
echo "🚀 Iniciando despliegue local de landing-cirux..."
# 1. Limpiar directorio temporal previo si existe
if [ -d "$DIR_BUILD" ]; then
sudo rm -rf "$DIR_BUILD"
fi
# 2. Clonar el repositorio local usando sudo hacia la carpeta temporal
echo "📦 Clonando repositorio local..."
sudo git clone "$REPO_LOCAL" "$DIR_BUILD"
# 3. Cambiar la propiedad de los archivos clonados a tu usuario actual
# para que Podman pueda leerlos sin necesidad de usar sudo
sudo chown -R $(whoami):$(whoami) "$DIR_BUILD"
# 4. Copiar el Dockerfile a la carpeta temporal de construcción
cp Dockerfile "$DIR_BUILD/"
# 5. Moverse a la carpeta temporal y construir la imagen con Podman
cd "$DIR_BUILD"
echo "🛠️ Construyendo contenedor con Podman..."
podman build -t landing-cirux:latest .
# 6. Ejecutar el contenedor para actualizar la carpeta de producción de Nginx
echo "🔄 Sincronizando archivos con el directorio web..."
podman run --rm \
-v "${RUTA_WEB_VPS}":/publico:Z \
landing-cirux:latest
# 7. Limpieza final
echo "🧹 Limpiando residuos..."
cd ~
sudo rm -rf "$DIR_BUILD"
podman image prune -f
echo "🎉 ¡Despliegue finalizado! Nginx ya está sirviendo la última versión."