Skip to content

Commit

Permalink
更新文档以适应 UniversalOJ/UOJ-System#138 中的变化
Browse files Browse the repository at this point in the history
  • Loading branch information
renbaoshuo committed Jul 3, 2024
1 parent 3dba068 commit ba2880c
Show file tree
Hide file tree
Showing 6 changed files with 26 additions and 51 deletions.
2 changes: 1 addition & 1 deletion index.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@

## 新闻

* 20240703: 切换到基于 Docker Compose 的部署方式。
* 20210402: 将 service 更换为 systemctl,并移除 SVN 文档。
* 20190903:更新了失效提醒。
* 20190109:修正文档中 Gitalk 的 bug。
Expand All @@ -24,4 +25,3 @@
如果您对 UOJ 开源项目有兴趣,请加入 Universal OJ 开源群:590822951。
如果我们的项目对您有帮助,欢迎给我们颗 Star;如果您发现了 bug 或者有任何的建议,请提出 issue:[UOJ-System](https://github.com/UniversalOJ/UOJ-System)
在 Github 上找到我们:[UOJ 开源社区](https://github.com/UniversalOJ)

3 changes: 2 additions & 1 deletion post/传统安装UOJ.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
**这篇文章中的内容可能已经过时,请等待后续文档更新。**

> 这篇文档将指导您以传统方式安装UOJ。
> 本文与《一键安装UOJ》只需选择一个执行。**推荐使用《一键安装UOJ》。**
> 相较于一键安装,传统安装可能耗费更多的时间。
Expand Down Expand Up @@ -69,4 +71,3 @@ sudo docker run --name uoj -dit -p 80:80 -p 3690:3690 --cap-add SYS_PTRACE uoj

访问服务器的ip,您现在应该能看到UOJ正在运行了。下一步,请参阅《维护UOJ》。

6 changes: 4 additions & 2 deletions post/多评测机配置.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
**这篇文章中的内容可能已经过时,请等待后续文档更新。**

> 这篇文档将指导您为 UOJ 社区版添加多个评测机。
>
> 在安装之前,请确保您已经通过安装了新版的 UOJ 社区版;在下文中,我们称该容器为 UOJ 容器。
> 在安装之前,请确保您已经通过安装了新版的 UOJ 社区版;在下文中,我们称该容器为 UOJ 容器。
## 在原 UOJ 容器所在物理机上安装

### 使用自动构建的镜像(推荐)

首先,请进入 UOJ 容器,并记录 ``/opt/uoj/judger/.conf.json`` 的内容。

执行下面的命令,从 DockerHub 中获取评测机镜像:
执行下面的命令,从 Docker Hub 中获取评测机镜像:

``` shell
sudo docker pull universaloj/uoj-system:judger
Expand Down
38 changes: 13 additions & 25 deletions post/安装.md
Original file line number Diff line number Diff line change
@@ -1,47 +1,35 @@
> 这篇文档将指导您安装UOJ
> 这篇文档将指导您安装 UOJ
## 安装前的准备

您需要准备一台**64位**的Linux系统,这里建议您使用 [Ubuntu](https://www.ubuntu.com/)
您需要准备一台 **64位** 的 Linux 系统,这里建议您使用 [Ubuntu](https://www.ubuntu.com/)

然后您需要安装 Docker。它是一个容器技术,暂且可以理解成虚拟机。

然后您需要安装`docker`。它是一个容器技术,暂且可以理解成虚拟机。
```bash
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

sudo systemctl start docker # 启动 docker 服务
sudo docker --version # 检查 docker 是否正常安装
```

另外,您可以通过下面的代码安装docker加速器(强烈推荐):
```bash
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl start docker # 启动 docker 服务
sudo docker --version # 检查 docker 是否正常安装
```

## 安装

您需要执行下面的指令来开始安装 UOJ:

```bash
sudo docker pull universaloj/uoj-system
sudo docker run --name uoj -dit -p 80:80 --cap-add SYS_PTRACE universaloj/uoj-system
git clone https://github.com/UniversalOJ/UOJ-System.git
cd UOJ-System
sudo docker-compose up -d
```

接下来,UOJ将在后台运行
> 如果需要修改端口,请编辑 `docker-compose.yml` 文件,修改 `uoj-web` 服务的 `ports` 项(靠近文件末尾)中的 `80:80``<port>:80`
> 上面的代码是用于**新建一个 UOJ 容器**,重启服务器后**不要**使用`docker run`来启动容器。具体参阅维护文档。
> 如果您不希望用80端口来运行uoj,您可以把上面的`-p 80:80`改成`-p <port>:80`

稍等几分钟,访问服务器的地址,您现在应该能看到UOJ正在运行了。
接下来,UOJ 将在后台启动。稍等几分钟,访问服务器的地址,您现在应该能看到 UOJ 正在运行了。

您注册的第一个用户将被自动设为管理员。

UOJ 的数据会存储在 `uoj_data` 文件夹下。

下一步,请参阅《[维护](https://universaloj.github.io/post/维护.html)》。
27 changes: 5 additions & 22 deletions post/本地构建镜像.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,22 +21,6 @@ sudo systemctl enable --now docker # 启用并启动 docker 服务
sudo docker --version # 检查 docker 是否正常安装
```

<!--
另外,可以通过下面的命令安装 docker 加速器。
```bash
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
EOF
sudo systemctl restart docker
```
-->

## 克隆 UOJ 源码

执行下面的命令,从 GitHub 克隆 UOJ 源码。
Expand All @@ -50,21 +34,20 @@ git clone https://github.com/UniversalOJ/UOJ-System.git
执行下面的命令,从源码构建 UOJ 镜像。

```bash
cd UOJ-System/install/bundle/
sudo docker build -t uoj-system .
sudo docker compose build
```

可能需要等待一段时间才能完成构建。构建结束时,屏幕上会显示:

```
Successfully built xxxxxx
Successfully tagged uoj-system:latest
writing image sha256:xxxxxx
naming to xxxxxx
```

构建结束后,下列命令可以使用本地构建的镜像运行 UOJ 。

```bash
sudo docker run --name uoj -dit -p 80:80 --cap-add SYS_PTRACE uoj-system
sudo docker compose up -d
```

稍等几分钟,访问服务器的地址,应该就能看到 UOJ 的默认主页了,接下来的设置请参阅《[维护](https://universaloj.github.io/post/维护.html)》和《[系统管理](https://universaloj.github.io/post/系统管理.html)》。
稍等几分钟,访问服务器的地址,应该就能看到 UOJ 的默认主页了,接下来的设置请参阅《[维护](/post/维护.html)》和《[系统管理](/post/系统管理.html)》。
1 change: 1 addition & 0 deletions post/维护.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
**这篇文章中的内容可能已经过时,请等待后续文档更新。**

## Docker简介

Expand Down

0 comments on commit ba2880c

Please sign in to comment.