https://github.com/ryanlee2014/cup-online-judge
Open source online judge based on Vue, Express.js and Docker. | CUP ACM/ICPC Online Judge | 中国石油大学(北京) Online Judge
https://github.com/ryanlee2014/cup-online-judge
docker docker-compose icpc-online-judge node-js online-judge vue
Last synced: 6 months ago
JSON representation
Open source online judge based on Vue, Express.js and Docker. | CUP ACM/ICPC Online Judge | 中国石油大学(北京) Online Judge
- Host: GitHub
- URL: https://github.com/ryanlee2014/cup-online-judge
- Owner: ryanlee2014
- License: apache-2.0
- Created: 2020-03-07T09:22:56.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-01-09T17:08:39.000Z (over 1 year ago)
- Last Synced: 2024-01-09T18:32:04.068Z (over 1 year ago)
- Topics: docker, docker-compose, icpc-online-judge, node-js, online-judge, vue
- Language: Shell
- Homepage: https://oj.cupacm.com
- Size: 130 KB
- Stars: 17
- Watchers: 1
- Forks: 6
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# CUP Online Judge



|name|pulls|version|layers|image size|
|:---:|:---:|:---:|:---:|:---:|
|[ryanlee2014/cupoj-backend](https://hub.docker.com/r/ryanlee2014/cupoj-backend)|||||
|[ryanlee2014/cupoj-websocket](https://hub.docker.com/r/ryanlee2014/cupoj-websocket)|||||
|[ryanlee2014/cupoj-judger](https://hub.docker.com/r/ryanlee2014/cupoj-judger)|||||
|[ryanlee2014/cupoj-language-server](https://hub.docker.com/r/ryanlee2014/cupoj-language-server)|||||
|[ryanlee2014/cupoj-frontend](https://github.com/ryanlee2014/CUP-Online-Judge-Frontend)|||||
|[metowolf/nginx](https://hub.docker.com/r/metowolf/nginx)|||||
|[mysql/mysql-server](https://hub.docker.com/r/mysql/mysql-server)|||||
|[library/redis](https://hub.docker.com/_/redis)|||||## Translation
[中文](/README.zh-cn.md)## Requirements
Install [Docker](https://get.docker.com/) and [Docker Compose](https://docs.docker.com/compose/install/)[Manual](/docs/INSTALL_DOCKER.md)
## Usage(all in one)
```bash
./init-env.sh
```## Update(all in one)
```bash
./update.sh
```## Usage(Manual Installation Guide)
1. Clone repo inside your project
```bash
git clone --recursive https://github.com/ryanlee2014/CUP-Online-Judge-NG-Docker-Judger.git docker-judger
```2. Enter the folder and rename .env.example to .env, docker-compose.example.yml to docker-compose.yml
```bash
cd docker-judger
cp .env.example .env
cp docker-compose.example.xml docker.compose.yml
```3. Enter the backend folder and rename config.sample.json to config.json
```bash
cd etc/backend
cp config.sample.json config.json
```4. Enter the judge folder and rename config.sample.json to config.json
Edit judger/etc/config.json and compile.json to your environment settings
```text
# judge.conf
cd judge/etc
cp config.sample.json config.json
```5. Make `data` foler and move files into the folder or link `data` folder to `judge/data`
```bash
# make dir
mkdir -p ./judger/data
# link
ln -s path/to/data ./judger/data
```6. Run your containers:
```bash
docker-compose up -d
```## Supporting CUP Online Judge
[Become a sponsor on afdian](https://afdian.net/@ryanlee) (Alipay only)