flyer-backend/README.md

1.6 KiB

BIJ1 flyer app back-end

Prepare config file

cp backend/configs/mysql.txt backend/configs/mysql.cnf

Usage

Requirements:

Run the following commands, given a running MySQL:

# tell django to use the local db
cp backend/configs/mysql.cnf backend/configs/mysql.django.cnf
# populate the database
mysql -uroot --password=password bij1 < /scripts/dump.sql
# create a virtual environment
python3 -m venv ./env
# active the virtual env
source ./env/bin/activate
# install python dependencies
pip install -r requirements.txt
# prepare the database
python manage.py migrate
# create user
python manage.py createsuperuser
# run the application
python manage.py runserver

Usage by Docker

Requirements:

# tell django to use the docker db
sed 's/127.0.0.1/db/g' backend/configs/mysql.cnf > backend/configs/mysql.django.cnf
# boot the application
docker compose up
# populate the database
docker exec -it $(docker compose ps db --format json | jq '.[].Name' | sed -n 's/"//pg') /bin/bash -c 'mysql -uroot --password=password bij1 < /scripts/dump.sql'
# create user
docker exec -it $(docker compose ps python --format json | jq '.[].Name' | sed -n 's/"//pg') /bin/bash -c 'cd /app; python manage.py createsuperuser'

Data sources