前言
本次紀錄所使用的是在 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 瀏覽相簿)
在 ubuntu 18.04.6 LTS Live Server 上安裝 Contest Management System
以下是在 ubuntu 18.04.6 LTS Live Server 的安裝過程截圖(點圖至 Flickr 瀏覽相簿)
指令大致如下
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 管理員」→「建立」一張新的網卡。
再到 VirtualBox 上的 ubuntu 18.04.6 LTS Live Server 的「設定」→「網路」→「介面卡 1」,改成「僅限主機介面卡」。
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 Server 的 IP]:8889 進入 Admin 頁面。
使用剛才新增的 Admin 帳號、密碼登入。
新增 Contest。
新增 User。
選擇加入 Contest 的 User。
回到 VirtualBox 上 CMS Server 的 Terminal,執行 cmsResourceService -a。
開啟 Web Browser,在網址列打 http://[CMS Server 的 IP]:8888 進入 Contest 的首頁。