Hay 2 formas de ejecutar el proyecto, el primero con Docker y el segundo instalando dependencias.
Se utiliza Docker para ejecutar el proyecto.
- Docker
Para la instalación se asume que se ejecuta en un environment de Linux.
sudo docker-compose up --build
Para construir el contenedor de postgres, podría suceder que el puerto de la computadora
host está utilizando el puerto 5432 (puerto default de postgres), lo que generaría un error al momento
de ejecutar bash sudo docker-compose up --build
, por lo que se tendría que detener el proceso que use ese puerto.
bash sudo lsof -i :5432
y obtenemos el process ID que utiliza el puerto 5432, y lo detenemos
bash sudo kill <Process ID>
y volvemos a ejecutar
sudo docker-compose up --build
Tambien podría pasar que el contenedor de la backend buildee más rápido que la base de datos, por lo que sería cuestión de intentar buildear de nuevo el proyecto con
sudo docker-compose up --build
Son 3 los recursos que usan el proyecto: Base de datos en postgres, frontend y backend.
Crea una base datos en PostgreSQL
CREATE DATABASE buses_db;
cd frontend/
npm install
npm run serve
- Crear environment de python de ser necesario
python -m venv myvenv
Ingresa a myvenv
cd myvenv/
Activa el entorno virtual
source bin/activate
Ingresa al repositorio (back)
cd backend/
Instala las dependencias
pip install -r requirements.txt
Editar el file settings.py para que se conecte a su base de datos local
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'buses_db',
'USER': 'user',
'PASSWORD': 'pass',
'HOST': '127.0.0.1',
'PORT': '5432',
}
}
Ir a directorio
cd bus_management_backend/
Crear migraciones
python manage.py makemigrations
python manage.py migrate
Utilizar dump de datos
python manage.py loaddata db.json
Corre el proyecto
python manage.py runserver