If you would like to contribute to Roster Wizard, please see the Contact page to ask for advice and assistance. Roster Wizard is a web application that runs on any platform that supports Docker or Docker Desktop. The following procedure assumes you are running Ubuntu Linux and you have a user account named 'ubuntu'. However the procedure can be easily adapted for other platforms with Docker or Docker Desktop installed.
Docker:
Install Docker and Docker Compose as per https://docs.docker.com/
Enable IPv6 in docker as per https://docs.docker.com/
Docker Containers:
cd ~ git clone https://github.com/galojix/roster-wizard.git mv roster-wizard roster cd roster cp docker-compose.development.yml docker-compose.override.yml
touch .env
Add the following to .env (this ensures that the Docker containers run as a non-root user):
USERID=<insert the UID of your user account on your development machine / docker host> GROUPID=<insert the GID of your user account on your development machine / docker host>
Example:
USERID=1000 GROUPID=1000
Note: If you subsequently change the USERID and GROUPID, then you will need to change the permissions of the named volumes on the Docker host.
touch .env_dev_db
Add the following to .env_dev_db:
POSTGRES_DB=postgres POSTGRES_USER=postgres POSTGRES_PASSWORD=<insert DB password here>
touch .env_dev_web
Add the following to .env_dev_web:
DEBUG=True TOOLBAR=True SECRET_KEY=<insert any random text here as it is not a production environment> DATABASE_URL=postgresql://postgres:<insert DB password here>@db:5432/postgres ALLOWED_HOSTS=0.0.0.0,127.0.0.1 LOGLEVEL=INFO LOGFORMAT=simple LOGTOFILE=False SECURE=False CELERY_BROKER_URL=pyamqp://guest@rabbitmq// CELERY_RESULT_BACKEND=redis://redis:6379/0 CSRF_TRUSTED_ORIGINS=http://localhost:8000,http://localhost:3000 CORS_ALLOWED_ORIGINS=http://localhost:8000,http://localhost:3000
Start docker containers:
docker compose up -d
Django:
cd ~/roster docker compose exec web uv run python manage.py migrate docker compose exec web uv run python manage.py createsuperuser
Browser:
Navigate to http://127.0.0.1:8000/ using a web browser installed on the Roster Wizard server.
Application:
Log in using the superuser account you created above.
Follow the instructions in the user guide: Roster Wizard User Guide