mirror of
https://github.com/QingdaoU/OnlineJudgeDeploy.git
synced 2024-12-29 16:01:55 +00:00
71 lines
2.9 KiB
Markdown
71 lines
2.9 KiB
Markdown
## 环境准备
|
||
|
||
### Linux 环境
|
||
|
||
1. 安装必要的依赖
|
||
|
||
```bash
|
||
sudo apt-get update &&
|
||
sudo apt-get install -y vim python-pip curl git
|
||
pip install docker-compose
|
||
```
|
||
1. 安装 Docker
|
||
国内用户使用脚本一键安装: `sudo curl -sSL https://get.daocloud.io/docker | sh`
|
||
国外用户使用脚本一键安装: `sudo curl -sSL get.docker.com | sh`
|
||
|
||
详细步骤参照: [https://docs.docker.com/install/]()
|
||
|
||
### Windows 环境
|
||
|
||
|
||
>window下的安装进攻体验,勿在生产环境使用。如有必要,请使用虚拟机安装Linux并将OJ安装在其中。
|
||
|
||
|
||
以下教程仅适用于 Win10 x64 下的 `PowerShell`
|
||
|
||
1. 安装 Windows 的 Docker 工具
|
||
1. 右击右下角 Docker 图标,选择 Settings 进行设置
|
||
1. 选择 `Shared Drives` 菜单,之后勾选你想安装 OJ 的盘符位置(例如勾选D盘),点击 `Apply`
|
||
1. 输入 Windows 的账号密码进行文件共享
|
||
1. 启动 `PowerShell`,输入`$env:PWD='{your path}'`, `{your path}`代表你想安装的目录。注意!目录必须在你共享的盘符中(例如设置`D:\qduoj`)。由于你创建的是临时环境变量,`PowerShell`关闭则临时变量作废,因此每次启动前必须重新设置过。当然你也可以选择在Win的环境变量中永久添加名为`PWD`的环境变量(与JDK设置方法相同)
|
||
1. 安装 `Python`、`pip`、`git`、`docker-compose`,安装方法自行搜索
|
||
|
||
## 开始安装
|
||
|
||
1. 请选择磁盘空间富余的位置,运行下面的命令
|
||
|
||
```bash
|
||
git clone -b 2.0 https://github.com/QingdaoU/OnlineJudgeDeploy.git && cd OnlineJudgeDeploy
|
||
```
|
||
1. 设置 Docker 加速源(可选,国内用户推荐)
|
||
|
||
参照: [https://lug.ustc.edu.cn/wiki/mirrors/help/docker]()
|
||
|
||
1. 启动服务
|
||
|
||
```bash
|
||
docker-compose up -d
|
||
```
|
||
|
||
> 对于非root用户,请用 `sudo -E docker-compose up -d`,否则不会传递当前的 `$PWD` 环境变量。
|
||
|
||
根据网速情况,大约5到30分钟就可以自动搭建完成,全程无需人工干预。
|
||
|
||
等命令执行完成,然后运行 `docker ps -a`,当看到所有的容器的状态没有 `unhealthy` 或 `Exited (x) xxx` 就代表OJ已经启动成功。
|
||
|
||
## 尽情享用吧
|
||
|
||
通过浏览器访问服务器的 HTTP 80 端口或者 HTTPS 443 端口,就可以开始使用了。后台管理路径为`/admin`, 安装过程中自动添加的超级管理员用户名为`root`,密码为`rootroot`, **请务必及时修改密码**。
|
||
|
||
不要忘记阅读文档 http://docs.onlinejudge.me/
|
||
|
||
## 定制
|
||
|
||
2.0版将一些常用设置放到了后台管理中,您可以直接登录管理后台对系统进行配置,而无需进行代码改动。
|
||
|
||
若需要对系统进行修改或二次开发,请参照各模块的**README**,修改完成后需自行构建Docker镜像并修改`docker-compose.yml`
|
||
|
||
## 遇到了问题?
|
||
|
||
请参照: [http://docs.onlinejudge.me/](http://docs.onlinejudge.me/#/onlinejudge/faq) ,如有其他问题请入群讨论或提issue。
|