Giter Club home page Giter Club logo

cms's Introduction

Contest Management System

Homepage: http://cms-dev.github.io/

When cloning the repo pass the --recursive argument to git clone.

  • Dockerfile - to easily build a docker image, based on ubuntu 20.04
  • run.sh - startup script
  • download.sh - to install cms for the first time, if you are not using docker image. Run it without cloning the repo first
  • update.sh - to build, install and run cms, if you are not using docker image
  • deploy.sh - to ssh into each vm, pull the updates and run update.sh

Configuring cgroups

If you are not running ubuntu 20.04, but later version like 22.04 (or other distros, Worker will give errors about 'no such directory'), then you should turn on the following kernel parameters:

systemd.unified_cgroup_hierarchy=0

Additionally, to make sure other processes don't run on the same core as worker, add the CPUs used by worker to the following kernel param:

isolcpus=1,2,3

The format is the same as the one used by taskset --cpu-list (see man taskset). Make sure to isolate the hyperthreaded virtual cpu as well.

Edit run.sh and change the cores in which the services should run. In this file you should add the logic of which services to start depending on the hostname.

Running docker image

Building:

docker build -t cms .

First configure database and run these to get into the container. You might have to add --net host option.

docker run --rm -it cms bash

Then:

cmsInitDB
cmsAddAdmin username -p password

Then finally start the services and add a new contest at http://localhost:8889 :

docker run --net host --privileged --volume=/sys/fs/cgroup:/sys/fs/cgroup --name cms --rm -it cms ./run.sh

After adding the contest, restart. To remove the container:

docker rm cms -f

cms's People

Contributors

stefano-maggiolo avatar giomasce avatar lw avatar bosco89 avatar bblackham avatar drdilyor avatar wil93 avatar andreyv avatar artikz avatar veluca93 avatar myungwoo avatar qnighy avatar lucach avatar fagu avatar mkrima avatar karliss avatar gcampax avatar wafrelka avatar edomora97 avatar smadbe avatar davidgreenaway avatar vytisb avatar alex65536 avatar magula avatar dariost avatar ranaldmiao avatar pjabbarzade avatar tuankiet65 avatar nir-lavee avatar snuke avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.