Skip to content

np-overflow/k8s-cms

Repository files navigation

K8s Contest Managment System

Make deploying CMS great again.

Intro

k8s-cms ports the Contest Management System to Kubernetes

Features:

  • no more having to follow long deployment instructions 🎉
  • adds fault tolerance through automatic health checks and self healing
  • autoscales to larger contests:
    • supports running up to 24 workers
    • supports running multiple contest web servers
  • includes kcmscli CLI to simply contest setup process (ie importing users from CSV, importing contests)

Limitations:

  • multiple contests - only supports running one contest at a time
  • printing - hooking up printers to print stuff has not been implemented yet.
  • scaling more than 24 worker instances - only supports scaling up to 24 worker instances
  • K8s only: requires the cluster to support privileged containers

Quickstart

Deploy k8s-cms:

  1. Clone or Download the repository
  2. Fill env file with credentials
cp env .env
nano .env # use your favourite editor
  1. Deploy
  • On Kubernetes
helm install k8s-cms chart
  • On Docker-Compose
docker-compose pull
docker-compose up

Docs