Se actualizo README.md con informacion para el deploy
This commit is contained in:
@@ -106,12 +106,74 @@ El menú desplegable **Gestión** en la barra de navegación organiza las áreas
|
||||
|
||||
## 🚀 Instalación y Puesta en Marcha
|
||||
|
||||
### Prerrequisitos
|
||||
### ⚡ Opción A — Deploy Automático en Debian 12 LXC (Recomendado)
|
||||
|
||||
El repositorio incluye un instalador interactivo (`install.sh`) que configura todo el entorno de producción automáticamente: dependencias del sistema, PostgreSQL, entorno virtual Python, inicialización de base de datos y servicio systemd con Gunicorn.
|
||||
|
||||
#### Prerrequisitos
|
||||
* Contenedor LXC o servidor con **Debian 12 (Bookworm)**
|
||||
* Acceso **root** (o `sudo`)
|
||||
* Conexión a Internet
|
||||
|
||||
#### Pasos
|
||||
|
||||
```bash
|
||||
# 1. Clonar el repositorio
|
||||
git clone https://gitea.oemspot.com.ar/carlostellocba/admin-edu-space.git
|
||||
cd admin-edu-space
|
||||
|
||||
# 2. Dar permisos de ejecución al instalador
|
||||
chmod +x install.sh
|
||||
|
||||
# 3. Ejecutar el instalador como root
|
||||
sudo bash install.sh
|
||||
```
|
||||
|
||||
Durante la ejecución el instalador solicitará únicamente la **contraseña para el usuario de base de datos** (si se deja vacío usa `eduspace2024` por defecto).
|
||||
|
||||
#### Qué instala y configura automáticamente
|
||||
|
||||
| Paso | Acción |
|
||||
| :--- | :--- |
|
||||
| 1 | Configura locale `en_US.UTF-8` en el sistema (previene errores de encoding) |
|
||||
| 2 | Instala Python 3, venv, pip, build-tools, libpq-dev y PostgreSQL |
|
||||
| 3 | Inicia y habilita el servicio PostgreSQL para el arranque automático |
|
||||
| 4 | Genera `SECRET_KEY` aleatoria y crea el archivo `.env` de producción |
|
||||
| 5 | Crea el usuario `eduspace_user` y la base de datos `classrooms_db` en PostgreSQL |
|
||||
| 6 | Crea el virtualenv e instala todas las dependencias + Gunicorn |
|
||||
| 7 | Ejecuta `init_db.py` (tablas, roles RBAC, edificios y usuario admin inicial) |
|
||||
| 8 | Crea el usuario del sistema `eduspace` (sin shell, por seguridad) |
|
||||
| 9 | Registra y arranca el servicio systemd `admin-edu-space` en el puerto **5000** |
|
||||
| 10 | Muestra resumen con URL, credenciales y comandos de gestión |
|
||||
|
||||
#### Comandos de gestión post-instalación
|
||||
|
||||
```bash
|
||||
# Ver estado del servicio
|
||||
systemctl status admin-edu-space
|
||||
|
||||
# Ver logs en tiempo real
|
||||
journalctl -u admin-edu-space -f
|
||||
|
||||
# Reiniciar la aplicación
|
||||
systemctl restart admin-edu-space
|
||||
|
||||
# Detener la aplicación
|
||||
systemctl stop admin-edu-space
|
||||
```
|
||||
|
||||
> **Nota:** Si el archivo `.env` ya existe en el directorio (por ejemplo, copiado manualmente antes de correr el instalador), el script lo conserva sin sobrescribirlo.
|
||||
|
||||
---
|
||||
|
||||
### 🖥️ Opción B — Instalación Manual (Desarrollo Local)
|
||||
|
||||
#### Prerrequisitos
|
||||
1. **Python 3.10 o superior**
|
||||
2. **PostgreSQL** en ejecución con una base de datos creada (ej. `classrooms_db`).
|
||||
3. **Git**
|
||||
|
||||
### Pasos de Configuración
|
||||
#### Pasos de Configuración
|
||||
|
||||
1. **Clonar el repositorio:**
|
||||
```bash
|
||||
@@ -137,7 +199,10 @@ El menú desplegable **Gestión** en la barra de navegación organiza las áreas
|
||||
```
|
||||
|
||||
4. **Configurar variables de entorno (`.env`):**
|
||||
Crear o editar el archivo `.env` en la raíz del proyecto:
|
||||
Copiar la plantilla y editar con los valores de tu entorno:
|
||||
```bash
|
||||
cp .env.example .env
|
||||
```
|
||||
```env
|
||||
SECRET_KEY=clave-secreta-de-produccion-cambiar-en-despliegue
|
||||
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/classrooms_db
|
||||
@@ -170,6 +235,8 @@ El menú desplegable **Gestión** en la barra de navegación organiza las áreas
|
||||
| :--- | :--- | :--- | :--- |
|
||||
| **Administrador del Sistema** | `admin@edu-space.com` | `admin123` | `Admin` (Acceso Total) |
|
||||
|
||||
> ⚠️ **Importante:** Cambiá la contraseña del administrador inmediatamente después del primer acceso.
|
||||
|
||||
---
|
||||
|
||||
## 📁 Estructura del Proyecto
|
||||
@@ -233,6 +300,7 @@ admin-edu-space/
|
||||
│ └── decorators.py # Decoradores RBAC (@permission_required, can_manage, etc.)
|
||||
├── config/ # Configuraciones de entorno (desarrollo, testing, prod)
|
||||
├── translations/ # Catálogos GNU gettext compilados (es / en)
|
||||
├── install.sh # Instalador automático para Debian 12 LXC
|
||||
├── init_db.py # Inicializador DDL y semillero de datos
|
||||
├── CHANGELOG_SESSION.md # Historial técnico cronológico
|
||||
├── requirements.txt # Dependencias Python
|
||||
|
||||
Reference in New Issue
Block a user