This procedure describes how to install Roster Wizard on a Linux workstation for the purposes of demonstration, evaluation or use by a single person. The following assumes your workstation is running Ubuntu 20.04 and you have a user account named 'ubuntu'. However the procedure for other Linux distributions or any operating system that supports Docker is very similar.
Docker:
Install Docker and Docker Compose as per https://docs.docker.com/
Enable IPv6 in docker as per https://docs.docker.com/
Docker Containers:
sudo mkdir /opt/roster sudo chown -R ubuntu:ubuntu /opt/roster cd /opt/roster wget --no-cache https://raw.githubusercontent.com/galojix/roster-wizard/master/docker-compose.yml wget --no-cache https://raw.githubusercontent.com/galojix/roster-wizard/master/docker-compose.demo.yml cp docker-compose.demo.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 a UID that is unused on the docker host> GROUPID=<insert a GID that is unused on the docker host>
Example:
USERID=12345 GROUPID=12345
touch .env_demo_db
Add the following to .env_demo_db:
POSTGRES_DB=postgres POSTGRES_USER=postgres POSTGRES_PASSWORD=<insert DB password here>
touch .env_demo_web
Add the following to .env_demo_web:
DEBUG=True TOOLBAR=False 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,<insert IP of server here> 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 /opt/roster docker-compose exec web python manage.py migrate docker-compose exec web python manage.py createsuperuser
Browser:
Navigate to http://127.0.0.1:8000/ using a web browser installed on the Roster Wizard workstation.
OR
Navigate to http://<insert_server_IP here>:8000/ using a web browser installed on another device.
Application:
Log in using the superuser account you created above.
Follow the instructions in the user guide: Roster Wizard User Guide