The new version of the MathHub System, managed with Docker Compose.
It consists of several containers, which can roughly be split into two groups:
- Management Containers
- v2tec/watchtower -- automatic updates
- portainer/portainer - to manage docker containers
- MathHub System
- mathhub/compositor - to delegate access to the containers below
- mathhub/frontend - to provide a frontend for MathHub
- mathhub/letitgo - to provide frontend configuration for MathHub
- mathhub/news - to provide a news ticker for MathHub
- kwarc/mmt - to provide a backend for MathHub
- mathhub/admin - to provide an Admin interface
This repository supports both a local and production setup. All configuration is done via env files.
These can be interactively generated using the configure script:
./configure
This script re-uses existing configuration if available. Furthermore, for a local setup, it is safe to accept all defaults.
WARNING: Always shut down MathHub before re-running the configuration script.
WARNING: Do not attempt to run any of these commands without having gone through the configure script first.
After having configured appropriatly, you can start the setup as follows:
# to start all the containers
docker-compose up -d
# to create an initial admin user
docker-compose exec admin python manage.py createsuperuser
# to stop the containers, but keep state
docker-compose down
# to stop all containers and remove all state
docker-compose down -v
Licensed under AGPL 3.0.