OnTrack Deployment
July 15, 2026 ยท View on GitHub
OnTrack Deployment
OnTrack (formerly Doubtfire) is a feedback-driven learning support system. This repository brings together the OnTrack services and is the central place for development and deployment instructions.
Development
You need Git, Docker, and Visual Studio Code with the Dev Containers extension. The container installs the other recommended editor extensions automatically.
git clone --recurse-submodules https://github.com/doubtfire-lms/doubtfire-deploy.git
cd doubtfire-deploy
code .
In VS Code, open the Command Palette (Cmd+Shift+P on macOS or
Ctrl+Shift+P on Windows/Linux), then run Dev Containers: Reopen in
Container. The container sets up the dependencies and development services,
then starts the API and web app.
Open http://localhost:4200 when startup is complete.
Deployment
The production/docker-compose.yml template
runs the published OnTrack Docker images together with MariaDB, Redis, PDF
generation, and a Caddy reverse proxy.
Before starting it:
- Set matching API, web, and support-image releases in
production/.env. - Replace every example password and secret in
production/api/.env.production. - Configure your hostname and authentication settings there.
- Replace the example files in
production/web/certificates, then updateproduction/web/Caddyfilefor your domain. - Arrange off-host backups for the database and
student_workvolumes.
Then validate and start the stack:
cd production
docker compose config
docker compose pull
docker compose up -d
docker compose exec pdfgen rails db:migrate
Use docker compose logs -f to follow startup. Pin specific release tags in
production and review the Compose template, storage, mail, authentication, TLS,
and backup settings for your institution before exposing the service publicly.
Contributing
Planning to contribute? Start with CONTRIBUTING.md for useful development tips, repository and branching guidance, testing workflows, and the steps for submitting a pull request.
License
Licensed under the GNU Affero General Public License (AGPL) v3.