Instalación#
Esta sección cubre cómo instalar y configurar Construbot para el desarrollo. Puedes elegir entre desarrollo basado en Docker (recomendado) o desarrollo local.
Descripción general#
Construbot admite dos métodos de instalación:
Desarrollo basado en Docker (recomendado): entorno en contenedores con todas las dependencias
Desarrollo local - Configuración del entorno virtual tradicional
Ambos métodos proporcionan un entorno de desarrollo completo con:
base de datos postgresql
Redis para almacenamiento en caché y apio
MailHog para pruebas de correo electrónico (solo Docker)
Todas las dependencias de Python
Requisitos previos#
Método acoplable#
Requerido:
Docker Desktop (incluye Docker y Docker Compose)
git
Make (normalmente preinstalado en macOS/Linux)
Versiones de escritorio de Docker:
macOS/Windows: Descargar desde https://www.docker.com/products/docker-desktop
Linux: Instale Docker Engine y Docker Compose por separado
Requisitos mínimos:
4 GB de RAM asignados a Docker
10 GB de espacio libre en disco
Docker Compose v2.0+
Método local#
Requerido:
Python 3.9.17 o superior
PostgreSQL 12+
Redis 6+
git
pip y virtualenv
Guías de instalación:
macOS: Utilice Homebrew:
brew install python@3.9 postgresql redisUbuntu/Debian:
sudo apt-get install python3.9 postgresql redis-serverWindows: Descargue instaladores de sitios web oficiales
Inicio rápido#
Método Docker (5 minutos)#
# 1. Clone repository
git clone https://github.com/javier-llamas/construbot.git
cd construbot
# 2. Build and start development environment
make buildev
# 3. Create superuser
make superuser
# 4. Access application
open http://localhost:8000
¡Eso es todo! La aplicación ahora se está ejecutando con:
Django en http://localhost:8000
MailHog en http://localhost:8025
PostgreSQL en localhost: 5432
Redis en localhost: 6379
Método Local (10 minutos)#
# 1. Clone repository
git clone https://github.com/javier-llamas/construbot.git
cd construbot
# 2. Create virtual environment
python3.9 -m venv venv
source venv/bin/activate # On Windows: venv\\Scripts\\activate
# 3. Install dependencies
pip install -r requirements/local.txt
# 4. Set up environment variables
cp .env.example .env
# Edit .env with your database credentials
# 5. Run migrations
python manage.py migrate
# 6. Create superuser
python manage.py createsuperuser
# 7. Run development server
make runserver
# 8. Access application
open http://localhost:8000
Próximos pasos#
Después de la instalación:
Completar datos de prueba: Ejecute
make poblarpara agregar datos de muestraExplore el panel: Inicie sesión con sus credenciales de superusuario
Lea los documentos de arquitectura: Descripción general
Verifique las opciones de configuración: configuración
Guías detalladas#
- Configuración de la ventana acoplable
- Configuración local
- Requisitos
- Descripción general
- Estructura de requisitos
- Dependencias principales (base.txt)
- Dependencias de desarrollo (local.txt)
- Prueba de dependencias (test.txt)
- Dependencias de producción (producción.txt)
- Gestión de dependencias
- Versiones de fijación
- Análisis de dependencia
- Problemas comunes
- Mejores prácticas
- Flujo de trabajo de ejemplo
- Ver también
- Configuración
Solución de problemas#
Problemas con Docker#
Error «Puerto ya en uso»:
# Find and stop conflicting services
lsof -ti:8000 | xargs kill -9 # macOS/Linux
# Or change ports in docker-compose.yml
«No queda espacio en el dispositivo»:
# Clean up Docker
make cleanhard # Warning: Removes all images and volumes
docker system prune -a
Los contenedores no se inician:
# Check logs
docker-compose logs
# Rebuild from scratch
make clean
make buildev
Problemas de instalación local#
«ejecutable pg_config no encontrado»:
# Install PostgreSQL development headers
# macOS: brew install postgresql
# Ubuntu: sudo apt-get install libpq-dev
«Python.h: No existe tal archivo»:
# Install Python development headers
# Ubuntu: sudo apt-get install python3.9-dev
# macOS: Should be included with Python
Errores de conexión a la base de datos:
Verifique su archivo .env:
DATABASE_URL=postgresql://user:password@localhost:5432/construbot_dev
Asegúrese de que PostgreSQL se esté ejecutando:
# macOS: brew services start postgresql
# Ubuntu: sudo service postgresql start
Variables de entorno#
Falta el archivo .env:
Copie el archivo de ejemplo:
cp .env.example .env
Variables requeridas no configuradas:
Variables mínimas requeridas:
DJANGO_SETTINGS_MODULE=construbot.config.settings.local
DJANGO_DEBUG=True
DATABASE_URL=postgresql://...
DJANGO_SECRET_KEY=your-secret-key-here
Consulte Configuración para obtener una referencia completa.
Preguntas comunes#
P: ¿Qué método debo utilizar?
R: Se recomienda Docker para la mayoría de los desarrolladores. Proporciona:
Entorno consistente en todas las plataformas
No es necesario instalar PostgreSQL/Redis localmente
Fácil limpieza («hacer limpio»)
Más cerca del entorno de producción
Utilice el desarrollo local si:
Ya tienes instalado PostgreSQL/Redis
Necesitas integrarte con otros servicios locales.
Prefieres el desarrollo tradicional de Python
P: ¿Puedo cambiar entre métodos?
R: ¡Sí! La base del código es la misma. Simplemente cambie la variable de entorno USE_DOCKER.
P: ¿Cómo actualizo mi instalación?
A:
git pull
# Docker: make buildev
# Local: pip install -r requirements/local.txt
python manage.py migrate
P: ¿Dónde se almacenan los datos de la base de datos?
A:
Docker: En un volumen de Docker llamado
construbot_postgres_dataLocal: En su directorio de datos de PostgreSQL (depende de la instalación)
Para restablecer la base de datos: make cleandb (Docker) o elimine/recree la base de datos manualmente (local).
Ver también#
Estructura de configuración - Understanding settings configuration
Despliegue - Production deployment guides
/contributor/development-setup - Contributing to Construbot
Comandos de archivos Make - Complete Makefile command reference