Table of Contents
- Descripción del Proyecto
- En caso de utilizar máquina virtual -> Enlace de descarga de Disco Virtual
- Configuración del Servidor GNU Health/Tryton
- En caso de utilizar servidor en línea (como Azure):
- Creación de máquina virtual para ejecutar GNU Health en línea (Azure)
- 1. Crear la máquina virtual
- 2. Acceder por SSH
- 3. Actualizar el sistema
- 4. Instalar PostgreSQL
- 5. Configurar PostgreSQL
- 6. Crear el usuario del sistema gnuhealth
- 7. Cambiar al usuario gnuhealth
- 8. Verificar Python y pip
- 9. Crear y activar entorno virtual
- 10. Instalar GNU Health
- 11. Verificar versiones
- 12. Crear el archivo de configuración trytond
- 13. Ejecutar Trytond
- 14. Verificación final
- Información de modelos
| title |
|---|
| Proyecto Modernización SAO GNU Health |
Descripción del Proyecto
Esta es una aplicación web React moderna diseñada para conectarse y interactuar con servidores Tryton GNU Health. La aplicación proporciona una interfaz de usuario intuitiva para el acceso a funcionalidades del sistema Tryton.
En caso de utilizar máquina virtual -> Enlace de descarga de Disco Virtual
https://www.gnuhealth.org/downloads/images/
Es necesario descargar una imagen de Debian 12/13 para incluir el disco virtual de GNU Health 50 con todo pre instalado.
Instrucciones
https://lists.gnu.org/archive/html/health/2025-08/msg00001.html
Configuración del Servidor GNU Health/Tryton
Archivo de Configuración
El servidor Tryton está configurado en /opt/gnuhealth/his-50/etc/trytond.conf:
# Generated by gnuhealth-control
[database]
uri = postgresql://:5432
path = /opt/gnuhealth/his-50/attach
[web]
# Listen to all network interfaces.
listen = 0.0.0.0:8000
list = true
cors = http://localhost:5173
cors_origins = http://localhost:5173
cors_credentials = false
cors_headers = Content-Type, Authorization, Accept
cors_methods = GET, POST, PUT, DELETE, OPTIONS
#para correr SAO
# root = {directorio al SAO}
#
#y comentar para correr el proyecto para evitar conflictos
#donde estos son los puertos donde corre el proyecto con Vite
#cors = http://localhost:5173
#cors_origins = http://localhost:5173
Puertos y Servicios
- Puerto 8000: Servidor web Tryton (interfaz web)
- Puerto 5432: Base de datos PostgreSQL
- Puerto 5173: Puerto en el que está corriendo Vite (proyecto)
Credenciales (user , pass)
- VM: gnuhealth , gnu
- Tryton: admin , gnusolidario
En caso de utilizar servidor en línea (como Azure):
Creación de máquina virtual para ejecutar GNU Health en línea (Azure)
Este documento describe paso a paso cómo desplegar GNU Health en una máquina virtual de Azure usando Debian 12 o 13.
1. Crear la máquina virtual
- Crear una VM en Azure con Debian 12 o Debian 13.
- Configurar red pública y permitir el puerto 8000 en el Network Security Group (NSG).
- Crear un usuario durante la instalación (en este caso:
brandonturcios).
2. Acceder por SSH
Desde tu equipo local:
ssh brandonturcios@IP_PUBLICA_DE_LA_VM
Ingresar la contraseña configurada (ejemplo: password).
3. Actualizar el sistema
sudo apt update
sudo apt upgrade -y
4. Instalar PostgreSQL
sudo apt install postgresql postgresql-contrib -y
Verificar que el servicio esté activo:
sudo systemctl status postgresql
5. Configurar PostgreSQL
Entrar al usuario postgres:
sudo -i -u postgres
Crear un usuario para GNU Health (este usuario se usará luego para cargar los dumps de demostración):
createuser gnuhealth --pwprompt
Asignar una contraseña (ejemplo: gnuh123).
Crear la base de datos:
createdb gnuhealth_demo -O gnuhealth
Salir del usuario postgres:
exit
Los dumps de demostración pueden obtenerse desde: https://www.gnuhealth.org/downloads/postgres_dumps/
6. Crear el usuario del sistema gnuhealth
sudo adduser gnuhealth
7. Cambiar al usuario gnuhealth
su - gnuhealth
8. Verificar Python y pip
python3 --version
pip3 --version
Si no están instalados:
sudo apt install python3 python3-pip python3-venv -y
9. Crear y activar entorno virtual
Crear el entorno virtual:
python3 -m venv venv
Activarlo:
source venv/bin/activate
10. Instalar GNU Health
Con el entorno virtual activo:
pip install gnuhealth-all-modules
Si durante la instalación ocurre un error, instalar manualmente psycopg2:
pip install psycopg2-binary
11. Verificar versiones
Verificar la versión de GNU Health:
pip show gnuhealth
Debe ser 5.0 o superior.
Verificar la versión de Tryton:
pip show trytond
Debe ser 7.0 o superior.
12. Crear el archivo de configuración trytond
Crear el archivo:
nano ~/trytond.conf
Contenido del archivo trytond.conf:
[database]
# URI de conexión a PostgreSQL
# Formato: postgresql://usuario:contraseña@host/base_de_datos
uri = postgresql://gnuhealth:gnuh123@localhost/gnuhealth_demo
# Número máximo de conexiones simultáneas
pool_size = 10
[web]
# Escuchar en todas las interfaces de red
listen = 0.0.0.0:8000
list = true
# Configuración CORS
cors = *
cors_origins = *
cors_credentials = false
cors_headers = Content-Type, Authorization, Accept
cors_methods = GET, POST, PUT, DELETE, OPTIONS
# Permitir conexiones desde cualquier host
root_path = /
Guardar y salir.
13. Ejecutar Trytond
trytond -c ~/trytond.conf
14. Verificación final
Si al ejecutar el comando se muestra que el servicio está escuchando en el puerto 8000, significa que GNU Health está funcionando correctamente.
Desde un navegador web:
http://IP_PUBLICA_DE_LA_VM:8000
Fin del procedimiento.
Información de modelos
Repositorio : https://github.com/BrandonTurcios/a