======================================================================== MIPDSA - GUÍA DE MIGRACIÓN A SERVIDOR REMOTO ======================================================================== CONTENIDO DEL DIRECTORIO migration/ mipdsa_backup.sql → Dump de PostgreSQL (base de datos principal) strapi.db → Base de datos SQLite de Strapi (CMS) strapi_uploads/ → Imágenes subidas a Strapi (33 archivos) docker-compose.yml → Configuración de contenedores migrate.txt → Este archivo ======================================================================== PRERREQUISITOS EN EL SERVIDOR REMOTO ======================================================================== - Docker y Docker Compose v2 instalados - Git (para clonar el proyecto) - Puerto 80, 7000, 5432 disponibles (o personalizar en .env) ======================================================================== PASO 1: SUBIR ARCHIVOS AL SERVIDOR ======================================================================== 1.1 Clonar el repositorio (o copiar toda la carpeta code/MIPDSA): git clone /ruta/en/servidor/MIPDSA cd /ruta/en/servidor/MIPDSA 1.2 Reemplazar el contenido de la carpeta migration/ con los archivos de este directorio. 1.3 Colocar los archivos de migración en su lugar: # Restaurar dump de PostgreSQL dentro del contenedor docker compose cp migration/mipdsa_backup.sql db:/tmp/ # Restaurar base de datos SQLite de Strapi cp migration/strapi.db app/cms/data/.tmp.db # Restaurar imágenes de Strapi cp -r migration/strapi_uploads/* app/cms/public/uploads/ ======================================================================== PASO 2: INICIAR CONTENEDORES ======================================================================== docker compose up -d Esto levantará: - postgres_db (PostgreSQL en puerto 5432) - go_backend (Go/Gin en puerto 80 y 8081) - strapi_cms (Strapi CMS en puerto 7000) ======================================================================== PASO 3: RESTAURAR BASE DE DATOS POSTGRESQL ======================================================================== # Esperar a que PostgreSQL esté listo sleep 5 # Restaurar dump (esto borra datos existentes y recrea todo) docker compose exec -T db psql -U user -d mydatabase < migration/mipdsa_backup.sql # Verificar restauración docker compose exec db psql -U user -d mydatabase -c "\dt" ======================================================================== PASO 4: CONFIGURAR STRAPI ======================================================================== Strapi se inicia automáticamente con la base de datos SQLite restaurada en el paso 1.3. Acceder a: http://:7000/admin Email: admin@mipdsa.com Contraseña: Mipdsa2024$ (Cambiar la contraseña después del primer inicio de sesión) ======================================================================== PASO 5: VERIFICAR FUNCIONAMIENTO ======================================================================== - Frontend: http:/// - Catálogo: http:///resultados - Nosotros: http:///nosotros - Contacto: http:///contacto - Strapi admin: http://:7000/admin - Health check: http:///health ======================================================================== PASO 6: CONFIGURAR DOMINIO (OPCIONAL) ======================================================================== Editar docker-compose.yml y cambiar: - ADMIN_URL=http://localhost:7000/admin → http://tudominio.com:7000/admin - PUBLIC_URL=http://localhost:7000 → http://tudominio.com:7000 En app/backend/src/server/template_routes.go: - Cambiar "http://localhost:7000" por "http://tudominio.com:7000" en la función IndexPage() para las URLs de imágenes ======================================================================== VARIABLES DE ENTORNO (docker-compose.yml) ======================================================================== PostgreSQL: POSTGRES_USER=user POSTGRES_PASSWORD=password POSTGRES_DB=mydatabase Backend: MIP_DB=postgres://user:password@postgres_db:5432/mydatabase?sslmode=disable PORT=80 Strapi: HOST=0.0.0.0 PORT=1313 ADMIN_JWT_SECRET=StmYftUxHB1jrwpy2BGPug== JWT_SECRET=H/zdlCODgprxttNpQfasDw== ======================================================================== NOTAS IMPORTANTES ======================================================================== - La contraseña de PostgreSQL en producción DEBE cambiarse - Las claves JWT de Strapi deben regenerarse para producción - El archivo docker-compose.yml de este directorio es la referencia - Los templates Go se compilan en caliente (ParseGlob) al iniciar - Strapi corre en modo develop (npm run develop) - Las imágenes del slider y marcas se sirven desde Strapi:7000/uploads/ ========================================================================