|
1 | | -> 这篇文档将指导您安装UOJ。 |
| 1 | +> 这篇文档将指导您安装 UOJ。 |
2 | 2 |
|
3 | 3 | ## 安装前的准备 |
4 | 4 |
|
5 | | -您需要准备一台**64位**的Linux系统,这里建议您使用 [Ubuntu](https://www.ubuntu.com/)。 |
| 5 | +您需要准备一台 **64位** 的 Linux 系统,这里建议您使用 [Ubuntu](https://www.ubuntu.com/)。 |
| 6 | + |
| 7 | +然后您需要安装 Docker。它是一个容器技术,暂且可以理解成虚拟机。 |
6 | 8 |
|
7 | | -然后您需要安装`docker`。它是一个容器技术,暂且可以理解成虚拟机。 |
8 | 9 | ```bash |
9 | 10 | curl -fsSL https://get.docker.com -o get-docker.sh |
10 | 11 | sudo sh get-docker.sh |
11 | 12 |
|
12 | | -sudo systemctl start docker # 启动 docker 服务 |
13 | | -sudo docker --version # 检查 docker 是否正常安装 |
14 | | -``` |
15 | | - |
16 | | -另外,您可以通过下面的代码安装docker加速器(强烈推荐): |
17 | | -```bash |
18 | | -sudo mkdir -p /etc/docker |
19 | | -sudo tee /etc/docker/daemon.json <<-'EOF' |
20 | | -{ |
21 | | - "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"] |
22 | | -} |
23 | | -EOF |
24 | | -sudo systemctl daemon-reload |
25 | | -sudo systemctl restart docker |
| 13 | +sudo systemctl start docker # 启动 docker 服务 |
| 14 | +sudo docker --version # 检查 docker 是否正常安装 |
26 | 15 | ``` |
27 | 16 |
|
28 | 17 | ## 安装 |
29 | 18 |
|
30 | 19 | 您需要执行下面的指令来开始安装 UOJ: |
31 | 20 |
|
32 | 21 | ```bash |
33 | | -sudo docker pull universaloj/uoj-system |
34 | | -sudo docker run --name uoj -dit -p 80:80 --cap-add SYS_PTRACE universaloj/uoj-system |
| 22 | +git clone https://github.com/UniversalOJ/UOJ-System.git |
| 23 | +cd UOJ-System |
| 24 | +sudo docker-compose up -d |
35 | 25 | ``` |
36 | 26 |
|
37 | | -接下来,UOJ将在后台运行。 |
| 27 | +> 如果需要修改端口,请编辑 `docker-compose.yml` 文件,修改 `uoj-web` 服务的 `ports` 项(靠近文件末尾)中的 `80:80` 为 `<port>:80`。 |
38 | 28 |
|
39 | | -> 上面的代码是用于**新建一个 UOJ 容器**,重启服务器后**不要**使用`docker run`来启动容器。具体参阅维护文档。 |
40 | | -> 如果您不希望用80端口来运行uoj,您可以把上面的`-p 80:80`改成`-p <port>:80`。 |
41 | | -
|
42 | | - |
43 | | -稍等几分钟,访问服务器的地址,您现在应该能看到UOJ正在运行了。 |
| 29 | +接下来,UOJ 将在后台启动。稍等几分钟,访问服务器的地址,您现在应该能看到 UOJ 正在运行了。 |
44 | 30 |
|
45 | 31 | 您注册的第一个用户将被自动设为管理员。 |
46 | 32 |
|
| 33 | +UOJ 的数据会存储在 `uoj_data` 文件夹下。 |
| 34 | + |
47 | 35 | 下一步,请参阅《[维护](https://universaloj.github.io/post/维护.html)》。 |
0 commit comments