preinscripcion 3.22.0 personalizado para colegios preuniversitarios de UADER
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

5.4 KiB

SIU-Guaraní Preinscripción 3.22.0 - Docker

Este proyecto contiene la configuración Docker para ejecutar el sistema de Preinscripción SIU-Guaraní versión 3.22.0.

Requisitos del Sistema

  • Docker
  • Docker Compose
  • Al menos 2GB de RAM disponible
  • Puerto 8080 y 5432 disponibles

Componentes Incluidos

  • PHP 7.4 con Apache 2.4
  • PostgreSQL 11.6 (configurado con encoding LATIN1)
  • Extensiones PHP requeridas: curl, mbstring, pdo_pgsql, openssl, apcu, gd2
  • Composer para gestión de dependencias
  • yui-compressor 2.4.2 para compilación de recursos

Instalación y Configuración

1. Configuración Inicial

Antes de ejecutar el sistema, es necesario configurar los archivos de configuración:

# Copiar archivos de configuración de ejemplo
cp docker/config.docker.php instalacion/config.php
cp docker/alias.docker.conf instalacion/alias.conf

2. Configuración de Base de Datos

El sistema utiliza PostgreSQL con las siguientes configuraciones por defecto:

  • Base de datos principal: preinscripcion
  • Base de datos de gestión: gestion (opcional)
  • Usuario: postgres
  • Contraseña: postgres123
  • Host: postgres (dentro del contenedor)
  • Puerto: 5432

3. Ejecutar el Sistema

# Construir y ejecutar los contenedores
docker-compose up -d

# Ver los logs
docker-compose logs -f

# Detener el sistema
docker-compose down

4. Acceso al Sistema

Una vez iniciado, el sistema estará disponible en:

5. Crear Usuario Administrador

Para crear un usuario administrador, ejecutar:

# Acceder al contenedor
docker-compose exec web bash

# Ejecutar el comando de creación de usuario
cd /var/www/html
./bin/preinscripcion user_admin

Seguir las instrucciones para crear el usuario administrador.

Configuración Personalizada

Variables de Entorno

El archivo docker-compose.yml incluye las siguientes variables de entorno configurables:

environment:
  - DB_HOST=postgres
  - DB_PORT=5432
  - DB_NAME=preinscripcion
  - DB_USER=postgres
  - DB_PASSWORD=postgres123

Configuración de Correo

Para configurar el servidor de correo, editar el archivo instalacion/config.php en la sección smtp:

'smtp' => [
    'from' => 'tu-email@universidad.edu.ar',
    'from_name' => 'SIU-Preinscripción',
    'host' => 'smtp.universidad.edu.ar',
    'seguridad' => mail::SSL,
    'auth' => true,
    'port' => 465,
    'usuario' => 'tu-usuario',
    'clave' => 'tu-contraseña',
    // ... más configuraciones
],

Múltiples Puntos de Acceso

Para configurar múltiples puntos de acceso, editar:

  1. instalacion/alias.conf - Agregar nuevos alias y configuraciones de Location
  2. instalacion/config.php - Agregar nuevas configuraciones en la sección accesos

Comandos Útiles

# Ver logs del contenedor web
docker-compose logs web

# Ver logs de PostgreSQL
docker-compose logs postgres

# Acceder al contenedor web
docker-compose exec web bash

# Acceder a PostgreSQL
docker-compose exec postgres psql -U postgres -d preinscripcion

# Reiniciar solo el contenedor web
docker-compose restart web

# Reconstruir los contenedores
docker-compose build --no-cache

# Limpiar volúmenes (¡CUIDADO! Esto borra todos los datos)
docker-compose down -v

Desarrollo

Compilar Recursos para Producción

# Acceder al contenedor
docker-compose exec web bash

# Compilar recursos
cd /var/www/html
./bin/preinscripcion compilar_recursos

Modo Producción

Para ejecutar en modo producción:

  1. Cambiar 'produccion' => true en instalacion/config.php
  2. Compilar recursos con el comando anterior
  3. Configurar servidor de correo apropiado
  4. Configurar SSL si es necesario

Solución de Problemas

Error de Permisos

Si hay problemas de permisos:

# Recuperar permisos correctos
docker-compose exec web chown -R www-data:www-data /var/www/html
docker-compose exec web chmod -R 755 /var/www/html

Base de Datos No Inicializada

Si la base de datos no se inicializa correctamente:

# Detener contenedores
docker-compose down

# Eliminar volúmenes
docker-compose down -v

# Volver a ejecutar
docker-compose up -d

Puerto en Uso

Si el puerto 8080 está en uso, cambiar en docker-compose.yml:

ports:
  - "8081:80"  # Cambiar 8080 por 8081

Estructura de Archivos

├── Dockerfile                 # Imagen PHP con Apache
├── docker-compose.yml         # Configuración de servicios
├── docker/
│   ├── apache-config.conf     # Configuración de Apache
│   ├── init.sh               # Script de inicialización
│   ├── init-db.sql           # Script adicional de BD
│   ├── config.docker.php     # Configuración de ejemplo
│   └── alias.docker.conf     # Alias de Apache de ejemplo
├── instalacion/              # Configuraciones del sistema
├── src/                      # Código fuente de la aplicación
└── BD/                       # Scripts de base de datos

Soporte

Para soporte técnico, consultar la documentación oficial del SIU:

Versión

Este Docker está configurado para SIU-Guaraní Preinscripción versión 3.22.0.