no message
This commit is contained in:
@@ -14,11 +14,15 @@ Docker 只负责运行 Python 爬虫和容器内 cron。MySQL、Redis、Nginx
|
||||
配置源:
|
||||
|
||||
- Docker Compose:`docker/docker-compose.crawler.yml`
|
||||
- Compose 路径变量示例:`docker/.env.example`
|
||||
- 环境变量示例:`docker/.env.docker.example`
|
||||
- 任务清单:`server/public/dongqiudi-crawler/config/crawler_tasks.yaml`
|
||||
- 爬虫源码:`docker/crawler`
|
||||
- 任务清单:`docker/crawler/config/crawler_tasks.yaml`
|
||||
- 任务日志:管理后台 `系统设置 -> 系统维护 -> 爬虫任务日志`
|
||||
- 错误日志:管理后台 `系统设置 -> 系统维护 -> 爬虫错误日志`
|
||||
|
||||
`docker/docker-compose.crawler.yml` 默认使用 `./crawler` 作为构建上下文和 `logs/data` 挂载目录。如果服务器上的 `docker/.env` 已存在,需要确认里面是 `CRAWLER_DIR=./crawler`,或者删除该变量让 Compose 使用默认值。
|
||||
|
||||
禁用的定时任务不要放进 Docker 执行清单;如需临时停用某个 Docker 爬虫任务,将 `crawler_tasks.yaml` 对应任务的 `active` 改为 `false`,然后重建或重启 crawler 容器。
|
||||
|
||||
### 当前 Docker 定时任务列表
|
||||
@@ -137,12 +141,13 @@ cd D:\www\sport-era
|
||||
powershell -ExecutionPolicy Bypass -File .\scripts\deploy-server.ps1 -Sudo -RemoteDir /www/wwwroot/test-server.sbnews.net
|
||||
```
|
||||
|
||||
全量模式默认以仓库根目录为源,只打包以下三个子目录:
|
||||
全量模式默认以仓库根目录为源,只打包以下四个子目录:
|
||||
|
||||
```text
|
||||
server/
|
||||
uniapp/
|
||||
admin/
|
||||
docker/
|
||||
```
|
||||
|
||||
也就是说,远端 `RemoteDir` 下最终会形成:
|
||||
@@ -151,9 +156,11 @@ admin/
|
||||
<RemoteDir>/server
|
||||
<RemoteDir>/uniapp
|
||||
<RemoteDir>/admin
|
||||
<RemoteDir>/docker
|
||||
<RemoteDir>/docker/crawler
|
||||
```
|
||||
|
||||
默认会排除运行态或较大目录,例如 `server/.env`、`server/vendor`、`server/runtime`、`server/public/uploads`、`server/public/admin`、`server/public/mobile`、爬虫 `data/logs/venv`,以及 `uniapp/node_modules`、`uniapp/dist`、`admin/node_modules`、`admin/dist`。如确实需要包含,可追加参数:
|
||||
默认会排除运行态、密钥或较大目录,例如 `server/.env`、`docker/.env`、`docker/.env.docker`、`server/vendor`、`server/runtime`、`server/public/uploads`、`server/public/admin`、`server/public/mobile`、爬虫 `data/logs/venv`,以及 `uniapp/node_modules`、`uniapp/dist`、`admin/node_modules`、`admin/dist`。如确实需要包含,可追加参数:
|
||||
|
||||
```bash
|
||||
--include-env
|
||||
@@ -203,11 +210,11 @@ cd D:\www\sport-era
|
||||
powershell -ExecutionPolicy Bypass -File .\scripts\deploy-server.ps1 -AutoIncremental -RemoteDir /www/wwwroot/test-server.sbnews.net -DryRun
|
||||
```
|
||||
|
||||
脚本会在打包和上传前先检查默认打包范围(`server` + `uniapp` + `admin`);如果这些目录内存在未提交、删除或未跟踪文件,会先自动提交这些变更,再继续计算增量范围。可以通过 `-AutoCommitMessage "提交说明"` 自定义这次自动提交的说明。若存在合并冲突,需要先手动解决。
|
||||
脚本会在打包和上传前先检查默认打包范围(`server` + `uniapp` + `admin` + `docker`);如果这些目录内存在未提交、删除或未跟踪文件,会先自动提交这些变更,再继续计算增量范围。可以通过 `-AutoCommitMessage "提交说明"` 自定义这次自动提交的说明。若存在合并冲突,需要先手动解决。
|
||||
|
||||
注意:自动增量只包含指定提交范围内已经提交到 Git 的差异,不会包含工作区未提交文件。需要指定任意起止提交时,继续使用 `-From <old_commit> -To <new_commit>`。
|
||||
|
||||
如果当前根目录 Git 只把 `server`、`uniapp` 或 `admin` 记录为 gitlink/submodule,脚本无法拿到对应目录内部的文件级差异;此时会把该目录从当前工作区按源码目录补进增量包,保证可以继续发布。
|
||||
如果当前根目录 Git 只把 `server`、`uniapp` 或 `admin` 记录为 gitlink/submodule,脚本无法拿到对应目录内部的文件级差异;此时会跳过该 gitlink 的自动提交,并把该目录从当前工作区按源码目录补进增量包,保证可以继续发布。
|
||||
|
||||
### 只演练不上传
|
||||
|
||||
@@ -233,7 +240,7 @@ powershell -ExecutionPolicy Bypass -File .\scripts\deploy-server.ps1 -Sudo -Remo
|
||||
|
||||
### 发布 uniapp 源码到服务器并在服务器构建
|
||||
|
||||
默认发布命令会把 `server/`、`uniapp/` 和 `admin/` 一起同步到远端根目录;如果需要在服务器端构建 `uniapp`,建议在远端根目录执行构建,再把 H5 产物写回同一套代码下的 `server/public/mobile`:
|
||||
默认发布命令会把 `server/`、`uniapp/`、`admin/` 和 `docker/` 一起同步到远端根目录;如果需要在服务器端构建 `uniapp`,建议在远端根目录执行构建,再把 H5 产物写回同一套代码下的 `server/public/mobile`:
|
||||
|
||||
```powershell
|
||||
cd D:\www\sport-era
|
||||
@@ -246,7 +253,7 @@ powershell -ExecutionPolicy Bypass -File .\scripts\deploy-server.ps1 `
|
||||
|
||||
说明:
|
||||
|
||||
- `-RemoteDir` 指向服务器上的项目根目录,解压后里面会同时有 `server/`、`uniapp/` 和 `admin/`。
|
||||
- `-RemoteDir` 指向服务器上的项目根目录,解压后里面会同时有 `server/`、`uniapp/`、`admin/` 和 `docker/`。
|
||||
- `-UniappReleasePath` 会通过环境变量 `UNIAPP_RELEASE_PATH` 传给 `uniapp/scripts/release.mjs`;这里传 `../server/public/mobile`,是因为构建命令会先 `cd uniapp`,再把 H5 产物回写到兄弟目录 `server/public/mobile`。
|
||||
- 服务器需要预先安装 `node >= 18.19.0` 和 `npm`,否则 `npm install` / `npm run build:h5` 无法执行。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user