安裝與運作 Contest Management System (ubuntu Server 版)

前言

本次紀錄所使用的是在 VirtualBox 上安裝的 ubuntu 18.04.6 LTS Live Server,本篇紀錄大致分為 3 個部分。 第一階段,在 VirtualBox 上安裝 ubuntu 18.04.6 LTS Live Server。 第二階段,在 ubuntu 18.04.6 LTS Live Server 上安裝 Contest Management System。 第三階段,執行並測試 Contest Management System。

在 VirtualBox 上安裝 ubuntu 18.04.6 LTS Live Server

以下是在 VirtualBox 的安裝過程截圖(點圖至 Flickr 瀏覽相簿) ubuntu18.04.6LiveServer

在 ubuntu 18.04.6 LTS Live Server 上安裝 Contest Management System

以下是在 ubuntu 18.04.6 LTS Live Server 的安裝過程截圖(點圖至 Flickr 瀏覽相簿) contestManagementSystemonUbuntu18.04.6LiveServer

指令大致如下

sudo apt update

sudo apt install build-essential openjdk-8-jdk-headless fp-compiler postgresql postgresql-client python3.6 cppreference-doc-en-html cgroup-lite libcap-dev zip python3.6-dev libpq-dev libcups2-dev libyaml-dev libffi-dev python3-pip python3-setuptools python3-tornado python3-psycopg2 python3-sqlalchemy python3-psutil python3-netifaces python3-crypto python3-six python3-bs4 python3-coverage python3-mock python3-requests python3-werkzeug python3-gevent python3-bcrypt python3-chardet patool python3-babel python3-xdg python3-future python3-jinja2 python3-yaml python3-sphinx python3-cups python3-pypdf2

//python3 的相關套件很多。
//如果想要方便的話,比較建議可以用 Shell Script 的方式服用。

wget https://github.com/cms-dev/cms/releases/download/v1.4.rc1/v1.4.rc1.tar.gz

tar xvf v1.4.rc1.tar.gz

cd cms

sudo python3 prerequisites.py install

exit

cd cms

sudo python3 setup.py install

sudo su - postgres

createuser —username=postgres —pwprompt cmsuser //這個「設定密碼」等一下會用到。

createdb —username=postgres —owner=cmsuser cmsdb

psql —username=postgres —dbname=cmsdb —command=’ALTER SCHEMA public OWNER TO cmsuser’

psql —username=postgres —dbname=cmsdb —command=’GRANT SELECT ON pg_largeobject TO cmsuser’

exit

sudo vim /usr/local/etc/cms.conf
//用剛才「設定密碼」把 your_password_here 置換掉。

cmsInitDB

cmsAddAdmin -p [password/密碼] [name/帳號名稱] //直接下指令,設定 CMS Admin 的帳號與密碼:cmsAddAdmin -p [password/密碼] [name/帳號名稱]

cmsLogService

cmsAdminWebServer

執行並測試 Contest Management System

要從目前的主機,登入到 VirtualBox 上的 CMS Server 前,請確認一下網卡的設定。 第一步是先到 「Oracle VM VirtualBox 管理員」→「建立」一張新的網卡。 installingContestManagementSystemonUbuntu18.04.6LiveServerEp19

再到 VirtualBox 上的 ubuntu 18.04.6 LTS Live Server 的「設定」→「網路」→「介面卡 1」,改成「僅限主機介面卡」。 installingContestManagementSystemonUbuntu18.04.6LiveServerEp20

ifconfig -a //看一下 [CMS Server 的 IP] 是什麼。

從另外一部電腦,去 ping 一下 [CMS Server 的 IP] 看看。

假設是 192.168.56.102,從另外一部電腦,用 Web Browser 登入設定好的 CMS Server 試試看,本例為 http://192.168.56.102:8888

開啟 Web Browser,在網址列打 [http://\[CMS](http://[CMS) Server 的 IP]:8889 進入 Admin 頁面。

使用剛才新增的 Admin 帳號、密碼登入。

新增 Contest。

新增 User。

選擇加入 Contest 的 User。

回到 VirtualBox 上 CMS Server 的 Terminal,執行 cmsResourceService -a。

開啟 Web Browser,在網址列打 [http://\[CMS](http://[CMS) Server 的 IP]:8888 進入 Contest 的首頁。

後記

  1. Contest Management System
  2. Welcome to CMS’s documentation! — CMS 1.4.rc1 documentation
  3. Have fun!