Inginious是一個智能的分級機,允許對學生製作的代碼進行安全和自動測試。
它是用Python編寫的,並使用Docker在安全環境中運行學生的代碼。
Inginious提供了管理與Docker和等級代碼互動的後端,以及一個允許學生以簡單優美的界面提交代碼的前端。前端還包括一個簡單的管理界面,該界面使教師可以檢查學生的進步並以簡單的方式修改練習。
後端獨立於前端,並被用作圖書館。
Inginious可以用作EDX的外部畢業生。計算機編程的課程範例 - 基本原理使用巧妙的校正學生的代碼。
只需運行:
$ docker構成 - 建造
>請注意,您可以通過設置註冊表和>“版本環境變量”來覆蓋註冊表和容器版本。
並訪問http:// localhost:瀏覽器中的9000。
默認登錄名和密碼是superadmin 。
--build參數是可選的,如果要在本地重建核心容器,請使用它。如果您想簡單地將它們從項目的註冊表中拉出,則不需要此論點。
如果尚不存在,則Docker-Compose將創建一個tasks文件夾。
然後,您可以通過將新課程安裝在tasks文件夾中,將新課程添加到新鮮的實例中。
例如,使用以下命令安裝了Inginious教程課程:
$ git克隆https://github.com/ucl-ingi/inginious-demo-tasks.git $ MV Inginious任務任務/教程任務/
如果遇到權限錯誤,則應運行以下命令:
$ sudo chown -r <your_user>:<your_user_group>任務
當任務目錄由Docker-Compose創建時,可能會發生這種情況。
請注意,提供的configuration.yaml文件是示例配置,管理員必須在生產部署中更改秘密密鑰。
PIP也可以使用手動安裝。
該文檔可在閱讀文檔上可用:
在Linux上,在目錄/doc中運行make html以創建文檔的HTML版本。
巧妙的人不斷改善。在項目的路線圖中描述了正在進行的各種工作。
Docker容器可與啟用Selinux安全使用。請不要在不激活SELINUX的情況下運行不受信任的代碼。
可以通過在此處註冊來加入用於使用和開發討論的郵件列表。