Desarrollo local y despliegue
Conoce el entorno de ejecución e inicia una instancia local desde una copia autorizada del código fuente.
En esta página
El entorno de ejecución
nondro ejecuta una aplicación web en Python, un proceso de trabajo en segundo plano y una base de datos PostgreSQL para el plano de control. El proceso de trabajo atiende conversaciones, invocaciones, flujos programados y otras tareas en cola. Los sistemas de origen se conectan por separado y permanecen bajo el control de la organización.
La siguiente configuración es para desarrollo local desde una copia autorizada del código fuente. Requiere Python 3.11 o posterior y un servidor PostgreSQL en ejecución. Prepara una base de datos vacía y un rol de base de datos con permiso para aplicar sus migraciones antes de continuar.
Instala y configura
Crea un entorno virtual e instala el paquete. Configura NONDRO_DB_URL para la base de datos PostgreSQL que preparaste, con una URL de conexión postgresql+psycopg2. Proporciona ese valor mediante tu entorno local o un archivo .env que no esté bajo control de versiones, y mantén las credenciales fuera del repositorio.
Configura NONDRO_ENV=dev, NONDRO_BASE_URL=http://localhost:8009 y el espacio de nombres de organización que elijas. Configura NONDRO_SOURCES_ENV_PATH con la ruta de un archivo de configuración local privado en el que se pueda escribir. Usa la misma configuración en la aplicación web y en el proceso de trabajo.
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
# Configure NONDRO_DB_URL and the local settings above before proceeding.
alembic upgrade head
nondro init-db
nondro user-add you@example.org "Your Name" --role adminInicia la aplicación web y el proceso de trabajo
Inicia la aplicación web y luego ejecuta el proceso de trabajo en una segunda terminal con el mismo entorno virtual y la misma configuración. Abre http://localhost:8009/login y utiliza la contraseña de un solo uso que muestra user-add. El primer inicio de sesión requiere cambiar la contraseña.
Las funciones de conversación necesitan un perfil de modelo. Configúralo en los ajustes de modelos del operador antes de probar el flujo de IA. GET /health informa si el proceso web responde; no es una prueba completa de las conexiones a las fuentes ni de la ejecución del proceso de trabajo.
# Terminal 1
python -m uvicorn nondro.app:app --host 127.0.0.1 --port 8009
# Terminal 2
python -m nondro.workerPrepara una instancia real
Para un despliegue compartido, configura HTTPS, un secreto de sesión único, cuentas reales, copias de seguridad de la base de datos y los archivos, y la URL pública real de la instancia. Desactiva el inicio de sesión de desarrollo. Conserva el espacio de nombres de la organización y las identidades lógicas al trasladar una instancia existente.
Usa la configuración de despliegue y la guía de operación del repositorio para los ajustes específicos del entorno, la migración, la conectividad con las fuentes y las URL de retorno del proveedor de identidad. Arrancar una instancia local no demuestra que esté lista para producción.