docs: add 全命令部署(Docker MongoDB)
This commit is contained in:
49
README.md
49
README.md
@@ -33,6 +33,55 @@ http://<服务器IP>/
|
||||
- 创建 `systemd` 服务,使用 `gunicorn` 直接监听 `0.0.0.0:80`
|
||||
- 开放防火墙 `80/tcp`(如系统启用了 `ufw`)
|
||||
|
||||
## 全命令部署(使用 Docker 部署 MongoDB)
|
||||
|
||||
适用系统:Ubuntu 20.04+/22.04+/24.04(需 root),MongoDB 通过 Docker 启动,其余步骤照常。
|
||||
|
||||
1. 安装 Docker 并启动:
|
||||
```bash
|
||||
sudo apt update
|
||||
sudo apt install -y docker.io
|
||||
sudo systemctl enable --now docker
|
||||
```
|
||||
2. 启动 MongoDB 容器(持久化到 `/srv/taiko-web-mongo`,监听 `27017`):
|
||||
```bash
|
||||
sudo mkdir -p /srv/taiko-web-mongo
|
||||
sudo docker run -d \
|
||||
--name taiko-web-mongo \
|
||||
--restart unless-stopped \
|
||||
-v /srv/taiko-web-mongo:/data/db \
|
||||
-p 27017:27017 \
|
||||
mongo:6
|
||||
```
|
||||
如需开启认证,可加上:
|
||||
```bash
|
||||
-e MONGO_INITDB_ROOT_USERNAME=<用户名> -e MONGO_INITDB_ROOT_PASSWORD=<强密码>
|
||||
```
|
||||
并在应用侧通过环境变量指定 Host:
|
||||
```bash
|
||||
export TAIKO_WEB_MONGO_HOST=127.0.0.1:27017
|
||||
```
|
||||
3. 安装并启动 Redis(照常):
|
||||
```bash
|
||||
sudo apt install -y redis-server
|
||||
sudo systemctl enable --now redis-server
|
||||
```
|
||||
4. 准备项目与虚拟环境(照常):
|
||||
```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
|
||||
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
|
||||
export TAIKO_WEB_MONGO_HOST=${TAIKO_WEB_MONGO_HOST:-127.0.0.1:27017}
|
||||
sudo /srv/taiko-web/.venv/bin/gunicorn -b 0.0.0.0:80 app:app
|
||||
```
|
||||
|
||||
## 手动部署(可选)
|
||||
|
||||
1. 安装依赖:
|
||||
|
||||
Reference in New Issue
Block a user