diff --git a/README.md b/README.md index 797ee1f..f0c091b 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,81 @@ -# 太鼓ウェブ +# 太鼓 Web(移除 tjaf 依赖版) -この太鼓ウェブは改良版です +仓库地址(主分支): -## デバッグの開始 +https://git.20091128.xyz/AnthonyDuan/taiko-web-without-tjaf/src/branch/main/ -依存関係をインストールします +## 功能概述 + +- 移除了对 `tjaf` 外部库的依赖,改用项目内置 TJA 解析实现(`tjaf.py`) +- 保持原有上传、歌曲管理、预览生成等功能 + +## 快速部署(推荐) + +适用系统:Ubuntu 20.04+/22.04+/24.04(需 root) + +```bash +bash setup.sh +``` + +部署完成后访问: + +``` +http://<服务器IP>/ +``` + +### 脚本做了什么 + +- 安装依赖:`python3`、`python3-venv`、`python3-pip`、`git`、`ffmpeg`、`rsync`、`curl`、`gnupg`、`libcap2-bin` +- 安装并启动:`MongoDB` 与 `Redis` +- 同步项目到 `/srv/taiko-web`,创建虚拟环境并安装 `requirements.txt` +- 如无 `config.py`,从 `config.example.py` 复制默认配置 +- 为虚拟环境 `python3` 赋予低位端口绑定权限(`setcap cap_net_bind_service=+ep`) +- 创建 `systemd` 服务,使用 `gunicorn` 直接监听 `0.0.0.0:80` +- 开放防火墙 `80/tcp`(如系统启用了 `ufw`) + +## 手动部署(可选) + +1. 安装依赖: + ```bash + sudo apt update + sudo apt install -y python3 python3-venv python3-pip git ffmpeg rsync libcap2-bin + ``` +2. 安装并启动数据库: + ```bash + sudo apt install -y mongodb redis-server + sudo systemctl enable --now mongod redis-server + ``` +3. 准备项目与虚拟环境: + ```bash + sudo mkdir -p /srv/taiko-web + sudo rsync -a --delete --exclude '.git' --exclude '.venv' . /srv/taiko-web/ + sudo python3 -m venv /srv/taiko-web/.venv + sudo /srv/taiko-web/.venv/bin/pip install -U pip + sudo /srv/taiko-web/.venv/bin/pip install -r /srv/taiko-web/requirements.txt + ``` +4. 配置文件: + ```bash + sudo cp /srv/taiko-web/config.example.py /srv/taiko-web/config.py + ``` +5. 赋予 80 端口绑定权限并启动: + ```bash + sudo setcap 'cap_net_bind_service=+ep' /srv/taiko-web/.venv/bin/python3 + sudo /srv/taiko-web/.venv/bin/gunicorn -b 0.0.0.0:80 app:app + ``` + +## 开发与调试 ```bash pip install -r requirements.txt ``` -データベースを起動します +本地快速启动(需要本机 MongoDB 与 Redis 已就绪): + +```bash +flask run +``` + +也可使用容器快速拉起本地数据库: ```bash docker run --detach \ @@ -18,9 +83,7 @@ docker run --detach \ --volume taiko-web-mongo-debug:/data/db \ --publish 27017:27017 \ mongo -``` -```bash docker run --detach \ --name taiko-web-redis-debug \ --volume taiko-web-redis-debug:/data \ @@ -28,14 +91,6 @@ docker run --detach \ redis ``` -サーバーを起動してください +--- -```bash -flask run -``` - -## デプロイ - -今すぐデプロイ! - -- https://taikoapp.uk/ +如需将监听接口改为仅内网或增加并发工作数(例如 `--workers 4`),可在 `setup.sh` 或 `systemd` 服务中调整。