docs: add upage usage instructions document
This commit is contained in:
144
docs/content/deployment/docker-compose.md
Normal file
144
docs/content/deployment/docker-compose.md
Normal file
@@ -0,0 +1,144 @@
|
||||
---
|
||||
id: docker-compose
|
||||
title: Docker Compose 部署
|
||||
---
|
||||
|
||||
# Docker Compose 部署
|
||||
|
||||
本文档详细介绍如何使用 Docker Compose 部署 UPage,这是一种更便捷的方式来管理 UPage 的部署。
|
||||
|
||||
## 前置条件
|
||||
在开始之前,请确保您的系统满足以下要求:
|
||||
- Docker 已安装(推荐 Docker 20.10.0 或更高版本)
|
||||
- Docker Compose 已安装(推荐 Docker Compose 1.29.0 或更高版本)
|
||||
- 至少 2GB 可用内存
|
||||
- 至少 2GB 可用磁盘空间
|
||||
- 互联网连接(用于拉取 Docker 镜像和访问大模型 API)
|
||||
|
||||
### 安装 Docker 和 Docker Compose
|
||||
|
||||
如果您的系统未安装 Docker,请参考[Docker 官方文档](https://docs.docker.com/engine/install/)进行安装。
|
||||
如果您的系统未安装 Docker Compose,请参考[Docker Compose 官方文档](https://docs.docker.com/compose/install/)进行安装。
|
||||
|
||||
## 使用 Docker Compose 部署
|
||||
|
||||
### 准备目录
|
||||
|
||||
创建必要的目录用于持久化数据,例如 `~/upage`:
|
||||
|
||||
```bash
|
||||
mkdir -p ~/upage/data
|
||||
mkdir -p ~/upage/logs
|
||||
mkdir -p ~/upage/storage
|
||||
cd ~/upage
|
||||
```
|
||||
:::tip
|
||||
UPage 所有数据与日志均存储在此目录中,请妥善保管。
|
||||
:::
|
||||
|
||||
### 创建配置文件
|
||||
创建 `docker-compose.yml` 文件:
|
||||
|
||||
```yaml
|
||||
version: "3.9"
|
||||
services:
|
||||
upage:
|
||||
image: upage-ai:production
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "${PORT:-3000}:3000"
|
||||
environment:
|
||||
- OPENAI_LIKE_API_BASE_URL=${OPENAI_LIKE_API_BASE_URL}
|
||||
- OPENAI_LIKE_API_KEY=${OPENAI_LIKE_API_KEY}
|
||||
- LLM_DEFAULT_PROVIDER=${LLM_DEFAULT_PROVIDER}
|
||||
- LLM_DEFAULT_MODEL=${LLM_DEFAULT_MODEL}
|
||||
- LLM_MINOR_MODEL=${LLM_MINOR_MODEL}
|
||||
volumes:
|
||||
- ./data:/app/data
|
||||
- ./logs:/app/logs
|
||||
- ./storage:/app/storage
|
||||
|
||||
volumes:
|
||||
upage-db:
|
||||
```
|
||||
|
||||
### 启动服务
|
||||
|
||||
在 `docker-compose.yml` 文件所在目录执行:
|
||||
|
||||
```bash
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
### 服务管理
|
||||
|
||||
使用 Docker Compose 管理服务的常用命令:
|
||||
|
||||
```bash
|
||||
# 启动服务
|
||||
docker-compose up -d
|
||||
|
||||
# 停止服务
|
||||
docker-compose down
|
||||
|
||||
# 重启服务
|
||||
docker-compose restart
|
||||
|
||||
# 查看服务日志
|
||||
docker-compose logs
|
||||
|
||||
# 查看服务状态
|
||||
docker-compose ps
|
||||
```
|
||||
|
||||
## 环境变量配置
|
||||
|
||||
UPage 支持通过环境变量进行配置。以下是一些比较重要的环境变量:
|
||||
|
||||
:::tip
|
||||
完整的配置请参考[配置参考](../configuration)。
|
||||
:::
|
||||
|
||||
### 基础配置
|
||||
|
||||
| 环境变量 | 描述 | 默认值 |
|
||||
| --- | --- | --- |
|
||||
| `PORT` | 服务监听端口 | `3000` |
|
||||
| `NODE_ENV` | Node.js 环境 | `production` |
|
||||
| `OPERATING_ENV` | 运行环境 | `production` |
|
||||
| `LOG_LEVEL` | 日志级别 | `debug` |
|
||||
| `USAGE_LOG_FILE` | 是否开启文件日志 | `true` |
|
||||
| `MAX_UPLOAD_SIZE_MB` | 附件上传的最大大小 (MB) | `5` |
|
||||
| `STORAGE_DIR` | 资源文件存储位置 | `/app/storage` |
|
||||
|
||||
### 模型提供商配置
|
||||
根据您选择的 AI 提供商,您还需要配置相应的 API 密钥和基础 URL,例如:
|
||||
|
||||
| 环境变量 | 描述 | 必填 | 示例 |
|
||||
| --- | --- | --- | --- |
|
||||
| `LLM_DEFAULT_PROVIDER` | 默认 LLM 提供商 | 是 | `OpenAILike` |
|
||||
| `OPENAI_LIKE_API_BASE_URL` | OpenAI 兼容 API 基础 URL | 是 | `https://your-api-base-url` |
|
||||
| `OPENAI_LIKE_API_KEY` | OpenAI 兼容 API 密钥 | 是 | `your-openai-like-api-key` |
|
||||
|
||||
### 大模型配置
|
||||
|
||||
| 环境变量 | 描述 | 必填 | 示例 |
|
||||
| --- | --- | --- | --- |
|
||||
| `LLM_DEFAULT_MODEL` | 生成页面所使用的主要模型 | 是 | `gpt-4-turbo` |
|
||||
| `LLM_MINOR_MODEL` | 辅助页面生成所使用的次级模型 | 是 | `gpt-3.5-turbo` |
|
||||
|
||||
## 升级 UPage
|
||||
|
||||
当有新版本发布时,您可以按照以下步骤升级 UPage:
|
||||
|
||||
```bash
|
||||
docker-compose pull
|
||||
docker-compose down
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
## 下一步
|
||||
|
||||
- 阅读[用户指南](user-guide/basics)学习如何使用 UPage 创建网页
|
||||
- 探索[配置参考](configuration)了解所有可用的配置选项
|
||||
- 探索[Logto 认证集成](logto)了解如何集成 Logto 实现用户认证
|
||||
160
docs/content/deployment/docker.md
Normal file
160
docs/content/deployment/docker.md
Normal file
@@ -0,0 +1,160 @@
|
||||
---
|
||||
id: docker
|
||||
title: Docker 部署
|
||||
---
|
||||
|
||||
# Docker 部署
|
||||
|
||||
本文档详细介绍如何使用 Docker 部署 UPage。
|
||||
|
||||
## 前置条件
|
||||
在开始之前,请确保您的系统满足以下要求:
|
||||
- Docker 已安装(推荐 Docker 20.10.0 或更高版本)
|
||||
- 至少 2GB 可用内存
|
||||
- 至少 2GB 可用磁盘空间
|
||||
- 互联网连接(用于拉取 Docker 镜像和访问大模型 API)
|
||||
|
||||
### 安装 Docker
|
||||
|
||||
如果您的系统未安装 Docker,请参考[Docker 官方文档](https://docs.docker.com/engine/install/)进行安装。
|
||||
|
||||
## 使用 Docker 部署
|
||||
|
||||
### 拉取镜像
|
||||
|
||||
首先,拉取 UPage 的最新 Docker 镜像:
|
||||
|
||||
```bash
|
||||
docker pull halohub/upage:latest
|
||||
```
|
||||
|
||||
您也可以使用特定版本的镜像,例如:
|
||||
|
||||
```bash
|
||||
docker pull halohub/upage:1.0.0
|
||||
```
|
||||
|
||||
### 准备目录
|
||||
|
||||
创建必要的目录用于持久化数据,例如 `~/upage`:
|
||||
|
||||
```bash
|
||||
mkdir -p ~/upage/data
|
||||
mkdir -p ~/upage/logs
|
||||
mkdir -p ~/upage/storage
|
||||
```
|
||||
:::tip
|
||||
UPage 所有数据与日志均存储在此目录中,请妥善保管。
|
||||
:::
|
||||
|
||||
### 启动容器
|
||||
|
||||
使用以下命令启动 UPage 容器:
|
||||
|
||||
```bash
|
||||
docker run -d \
|
||||
--name upage \
|
||||
--restart unless-stopped \
|
||||
-p 3000:3000 \
|
||||
-e LLM_DEFAULT_PROVIDER=OpenAILike \
|
||||
-e OPENAI_LIKE_API_BASE_URL=your-openai-like-api-base-url \
|
||||
-e OPENAI_LIKE_API_KEY=your-openai-like-api-key \
|
||||
-e LLM_DEFAULT_MODEL=your-default-model \
|
||||
-e LLM_MINOR_MODEL=your-minor-model \
|
||||
-v ~/upage/data:/app/data \
|
||||
-v ~/upage/logs:/app/logs \
|
||||
-v ~/upage/storage:/app/storage \
|
||||
halohub/upage:latest
|
||||
```
|
||||
|
||||
### 容器管理
|
||||
|
||||
常用的容器管理命令:
|
||||
|
||||
```bash
|
||||
# 停止容器
|
||||
docker stop upage
|
||||
|
||||
# 启动容器
|
||||
docker start upage
|
||||
|
||||
# 重启容器
|
||||
docker restart upage
|
||||
|
||||
# 查看容器日志
|
||||
docker logs upage
|
||||
|
||||
# 查看容器状态
|
||||
docker ps -a | grep upage
|
||||
```
|
||||
|
||||
## 环境变量配置
|
||||
|
||||
UPage 支持通过环境变量进行配置。以下是一些比较重要的环境变量,均可以使用 `-e` 参数在启动容器时设置:
|
||||
|
||||
:::tip
|
||||
完整的配置请参考[配置参考](../configuration)。
|
||||
:::
|
||||
|
||||
### 基础配置
|
||||
|
||||
| 环境变量 | 描述 | 默认值 |
|
||||
| --- | --- | --- |
|
||||
| `PORT` | 服务监听端口 | `3000` |
|
||||
| `NODE_ENV` | Node.js 环境 | `production` |
|
||||
| `OPERATING_ENV` | 运行环境 | `production` |
|
||||
| `LOG_LEVEL` | 日志级别 | `debug` |
|
||||
| `USAGE_LOG_FILE` | 是否开启文件日志 | `true` |
|
||||
| `MAX_UPLOAD_SIZE_MB` | 附件上传的最大大小 (MB) | `5` |
|
||||
| `STORAGE_DIR` | 资源文件存储位置 | `/app/storage` |
|
||||
|
||||
### 模型提供商配置
|
||||
根据您选择的 AI 提供商,您还需要配置相应的 API 密钥和基础 URL,例如:
|
||||
|
||||
| 环境变量 | 描述 | 必填 | 示例 |
|
||||
| --- | --- | --- | --- |
|
||||
| `LLM_DEFAULT_PROVIDER` | 默认 LLM 提供商 | 是 | `OpenAILike` |
|
||||
| `OPENAI_LIKE_API_BASE_URL` | OpenAI 兼容 API 基础 URL | 是 | `https://your-api-base-url` |
|
||||
| `OPENAI_LIKE_API_KEY` | OpenAI 兼容 API 密钥 | 是 | `your-openai-like-api-key` |
|
||||
|
||||
### 大模型配置
|
||||
|
||||
| 环境变量 | 描述 | 必填 | 示例 |
|
||||
| --- | --- | --- | --- |
|
||||
| `LLM_DEFAULT_MODEL` | 生成页面所使用的主要模型 | 是 | `gpt-4-turbo` |
|
||||
| `LLM_MINOR_MODEL` | 辅助页面生成所使用的次级模型 | 是 | `gpt-3.5-turbo` |
|
||||
|
||||
## 升级 UPage
|
||||
|
||||
当有新版本发布时,您可以按照以下步骤升级 UPage:
|
||||
|
||||
```bash
|
||||
# 拉取最新镜像
|
||||
docker pull halohub/upage:latest
|
||||
|
||||
# 停止并删除旧容器
|
||||
docker stop upage
|
||||
docker rm upage
|
||||
|
||||
# 使用新镜像启动容器(使用与之前相同的环境变量和挂载)
|
||||
docker run -d \
|
||||
--name upage \
|
||||
--restart unless-stopped \
|
||||
-p 3000:3000 \
|
||||
-e LLM_DEFAULT_PROVIDER=OpenAILike \
|
||||
-e OPENAI_LIKE_API_BASE_URL=your-openai-like-api-base-url \
|
||||
-e OPENAI_LIKE_API_KEY=your-openai-like-api-key \
|
||||
-e LLM_DEFAULT_MODEL=your-default-model \
|
||||
-e LLM_MINOR_MODEL=your-minor-model \
|
||||
-v ~/upage/data:/app/data \
|
||||
-v ~/upage/logs:/app/logs \
|
||||
-v ~/upage/storage:/app/storage \
|
||||
halohub/upage:latest
|
||||
```
|
||||
|
||||
## 下一步
|
||||
|
||||
- 阅读[用户指南](../user-guide/basics)学习如何使用 UPage 创建网页
|
||||
- 探索[配置参考](../configuration)了解所有可用的配置选项
|
||||
- 探索[Logto 认证集成](./logto)了解如何集成 Logto 实现用户认证
|
||||
|
||||
138
docs/content/deployment/logto.md
Normal file
138
docs/content/deployment/logto.md
Normal file
@@ -0,0 +1,138 @@
|
||||
---
|
||||
id: logto
|
||||
title: Logto 认证集成
|
||||
---
|
||||
|
||||
# Logto 认证集成
|
||||
|
||||
:::info
|
||||
UPage 默认仅支持单一匿名用户访问,但您可以通过集成 Logto 实现用户认证,支持多用户登录
|
||||
:::
|
||||
|
||||
UPage 支持与 [Logto](https://logto.io/) 集成,提供完整的用户认证体系。本文档将指导您如何配置 UPage 与 Logto 的集成。
|
||||
|
||||
## 什么是 Logto?
|
||||
|
||||
Logto 是一个开源的身份验证和授权解决方案,提供了完整的用户管理、身份验证和授权功能。通过与 Logto 集成,UPage 可以支持用户注册、登录、密码重置等功能,同时提供基于角色的访问控制。
|
||||
|
||||
## Logto 接入方式
|
||||
|
||||
Logto 支持两种接入方式,您可以根据自己的需求选择合适的方式。
|
||||
|
||||
1. 使用 Logto 官方提供的托管服务 - Logto Cloud。
|
||||
2. 本地部署开源版 Logto 服务。
|
||||
|
||||
:::info
|
||||
两种方式仅在接入方式上有所区别,在配置上完全一致。
|
||||
:::
|
||||
|
||||
### 使用官方托管服务
|
||||
|
||||
访问 [Logto 官方网站](https://logto.io/),注册一个账号即可进行下一步操作。
|
||||
|
||||
### 本地部署 Logto
|
||||
|
||||
UPage 提供了一个简化的 Logto 部署配置。在 UPage 项目目录下,您可以找到 `logto/docker-compose.yaml` 文件以及 `.env` 文件。
|
||||
|
||||
```bash
|
||||
curl -L https://raw.githubusercontent.com/halo-dev/upage/refs/heads/main/logto/docker-compose.yaml -o ~/upage/logto/docker-compose.yaml
|
||||
curl -L https://raw.githubusercontent.com/halo-dev/upage/refs/heads/main/logto/.env -o ~/upage/logto/.env
|
||||
cd ~/upage/logto
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
这将启动 Logto 服务,默认情况下可以通过 `http://localhost:3002` 访问 Logto 管理控制台。
|
||||
|
||||
:::caution
|
||||
在生产环境部署时,请务必修改 `.env` 文件中的 `LOGTO_ENDPOINT` 、 `LOGTO_ADMIN_ENDPOINT` 以及 `LOGTO_POSTGRES_PASSWORD` 配置。
|
||||
:::
|
||||
|
||||
## 配置 Logto
|
||||
|
||||
1. 访问 Logto 管理控制台,
|
||||
2. 创建一个新的应用程序:
|
||||
- 应用类型:传统网页应用
|
||||
- 应用名称:UPage
|
||||
- 重定向 URIs:`http://${UPAGE_URL}/api/auth/callback`
|
||||
- 退出登录后重定向 URIs:`http://${UPAGE_URL}`
|
||||
- CORS 允许的来源:`http://${UPAGE_URL}`
|
||||
- 其他配置根据实际情况填写
|
||||
3. 记录应用程序的 ID 和密钥,这些将用于配置 UPage
|
||||
|
||||
## 配置 UPage 与 Logto 集成
|
||||
|
||||
### 环境变量配置
|
||||
|
||||
在 UPage 的环境变量中配置 Logto 相关参数:
|
||||
|
||||
```bash
|
||||
# 启用 Logto 认证
|
||||
LOGTO_ENABLE=true
|
||||
# Logto LOGTO_ENDPOINT 地址
|
||||
LOGTO_ENDPOINT=http://localhost:3001
|
||||
# Logto 应用程序 ID
|
||||
LOGTO_APP_ID=your-app-id
|
||||
# Logto 应用程序密钥
|
||||
LOGTO_APP_SECRET=your-app-secret
|
||||
# Logto 用于加密 cookie 的密钥,随机生成一个 32 位密钥即可
|
||||
LOGTO_COOKIE_SECRET=your-cookie-secret
|
||||
# 填写 UPage 地址,根据实际部署地址修改
|
||||
LOGTO_BASE_URL=http://localhost:3000
|
||||
```
|
||||
|
||||
如果使用 Docker compose 部署 UPage,在 `docker-compose.yml` 文件中添加这些环境变量:
|
||||
|
||||
```yaml
|
||||
services:
|
||||
upage:
|
||||
# ... 其他配置
|
||||
environment:
|
||||
# ... 其他环境变量
|
||||
- LOGTO_ENABLE=true
|
||||
- LOGTO_ENDPOINT=http://logto:3001
|
||||
- LOGTO_APP_ID=your-app-id
|
||||
- LOGTO_APP_SECRET=your-app-secret
|
||||
- LOGTO_COOKIE_SECRET=your-cookie-secret
|
||||
- LOGTO_BASE_URL=http://localhost:3000
|
||||
```
|
||||
|
||||
### 配置说明
|
||||
|
||||
| 环境变量 | 描述 | 示例 |
|
||||
| --- | --- | --- |
|
||||
| `LOGTO_ENABLE` | 是否启用 Logto 认证 | `true` |
|
||||
| `LOGTO_ENDPOINT` | Logto 服务的 URL | `http://localhost:3001` |
|
||||
| `LOGTO_APP_ID` | Logto 应用程序 ID | `your-app-id` |
|
||||
| `LOGTO_APP_SECRET` | Logto 应用程序密钥 | `your-app-secret` |
|
||||
| `LOGTO_COOKIE_SECRET` | 用于加密 cookie 的密钥 | `00bf44b6ceaa648eca6ad172f0cd8c8c` |
|
||||
| `LOGTO_BASE_URL` | UPage 地址 | `http://localhost:3000` |
|
||||
|
||||
## Logto 使用技巧
|
||||
|
||||
:::tip
|
||||
UPage 集成 Logto 步骤已完成,以下内容是 Logto 的特殊使用技巧,供扩展阅读,如无定制化需求可忽略。
|
||||
:::
|
||||
|
||||
### 自定义登录界面
|
||||
|
||||
Logto 提供了自定义登录界面的功能:
|
||||
|
||||
1. 在 Logto 管理控制台中,导航到"外观"
|
||||
2. 自定义登录页面的样式、颜色和品牌元素
|
||||
3. 预览并保存更改
|
||||
|
||||
### 配置社交登录
|
||||
|
||||
Logto 支持多种社交登录方式:
|
||||
|
||||
1. 在 Logto 管理控制台中,导航到"连接器"
|
||||
2. 添加社交登录连接器(如 Google、GitHub、微信等)
|
||||
3. 按照向导完成配置
|
||||
|
||||
### 配置多因素认证
|
||||
|
||||
启用多因素认证以提高安全性:
|
||||
|
||||
1. 在 Logto 管理控制台中,导航到"安全"
|
||||
2. 启用多因素认证
|
||||
3. 配置多因素认证方式(如 TOTP、短信等)
|
||||
40
docs/content/deployment/others.md
Normal file
40
docs/content/deployment/others.md
Normal file
@@ -0,0 +1,40 @@
|
||||
---
|
||||
id: others
|
||||
title: 其他配置
|
||||
---
|
||||
|
||||
# 其他配置
|
||||
|
||||
本文档提供了部署 UPage 时的一些其他配置选项和最佳实践。
|
||||
|
||||
## 使用 Nginx 反向代理
|
||||
|
||||
如果您需要使用 Nginx 作为反向代理,可以参考以下配置:
|
||||
|
||||
```nginx
|
||||
server {
|
||||
listen 80;
|
||||
server_name your-domain.com;
|
||||
|
||||
location / {
|
||||
proxy_pass http://localhost:3000;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## 配置 HTTPS
|
||||
|
||||
建议使用 Nginx 或其他反向代理来处理 HTTPS 请求。您可以使用 Let's Encrypt 获取免费的 SSL 证书。
|
||||
|
||||
## 数据备份
|
||||
|
||||
UPage 的数据存储在挂载的 `data` 目录中,您可以定期备份该目录来保护您的数据:
|
||||
|
||||
```bash
|
||||
# 备份数据目录
|
||||
tar -czf upage-data-backup-$(date +%Y%m%d).tar.gz ./upage/data
|
||||
```
|
||||
229
docs/content/deployment/source.md
Normal file
229
docs/content/deployment/source.md
Normal file
@@ -0,0 +1,229 @@
|
||||
---
|
||||
id: source
|
||||
title: 源码部署
|
||||
---
|
||||
|
||||
# 源码部署
|
||||
|
||||
本文档详细介绍如何从源码构建和部署 UPage。如果您希望自定义 UPage 或者参与开发,这是最合适的部署方式。
|
||||
|
||||
## 前置条件
|
||||
|
||||
在开始之前,请确保您的系统满足以下要求:
|
||||
|
||||
- Node.js 18.18.0 或更高版本
|
||||
- pnpm 9.4.0 或更高版本
|
||||
- Git
|
||||
|
||||
## 下载并构建代码
|
||||
|
||||
### 克隆代码库
|
||||
|
||||
首先,克隆 UPage 的代码库:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/halo-dev/upage.git
|
||||
cd upage
|
||||
```
|
||||
|
||||
### 安装依赖
|
||||
|
||||
使用 pnpm 安装项目依赖:
|
||||
|
||||
```bash
|
||||
pnpm install
|
||||
```
|
||||
|
||||
### 配置环境变量
|
||||
|
||||
拷贝 `.env.example` 文件,创建 `.env` 文件:
|
||||
|
||||
```bash
|
||||
cp .env.example .env
|
||||
```
|
||||
|
||||
配置必要的环境变量:
|
||||
|
||||
```bash
|
||||
# 基础配置
|
||||
PORT=3000
|
||||
NODE_ENV=production
|
||||
OPERATING_ENV=production
|
||||
LOG_LEVEL=info
|
||||
USAGE_LOG_FILE=true
|
||||
MAX_UPLOAD_SIZE_MB=5
|
||||
STORAGE_DIR=./storage
|
||||
|
||||
# AI 提供商配置
|
||||
LLM_DEFAULT_PROVIDER=OpenAILike
|
||||
OPENAI_LIKE_API_BASE_URL=your-openai-like-api-base-url
|
||||
OPENAI_LIKE_API_KEY=your-openai-like-api-key
|
||||
LLM_DEFAULT_MODEL=your-default-model
|
||||
LLM_MINOR_MODEL=your-minor-model
|
||||
```
|
||||
|
||||
您可以根据需要配置不同的 AI 提供商,详细配置请参考[配置参考](../configuration)。
|
||||
|
||||
### 生成 Prisma 客户端
|
||||
|
||||
```bash
|
||||
pnpm setup
|
||||
```
|
||||
|
||||
## 开发模式使用
|
||||
|
||||
如果您想在开发模式下运行 UPage,可以使用以下命令:
|
||||
|
||||
```bash
|
||||
pnpm dev
|
||||
```
|
||||
|
||||
开发服务器启动后,您可以通过浏览器访问:
|
||||
|
||||
```
|
||||
http://localhost:5173
|
||||
```
|
||||
|
||||
这将启动开发服务器,支持热重载,方便您进行开发和调试。
|
||||
|
||||
## 生产模式使用
|
||||
|
||||
构建 UPage 项目:
|
||||
|
||||
```bash
|
||||
pnpm build
|
||||
```
|
||||
|
||||
### 启动服务
|
||||
|
||||
启动 UPage 服务:
|
||||
|
||||
```bash
|
||||
pnpm preview
|
||||
```
|
||||
|
||||
服务启动后,您可以通过浏览器访问:
|
||||
|
||||
```
|
||||
http://localhost:3000
|
||||
```
|
||||
|
||||
## 使用 PM2 管理服务(可选)
|
||||
|
||||
在生产环境中,可以使用 PM2 来管理 Node.js 应用程序:
|
||||
|
||||
### 全局安装 PM2
|
||||
|
||||
```bash
|
||||
npm install -g pm2
|
||||
```
|
||||
|
||||
### 创建 PM2 配置文件
|
||||
|
||||
创建 `ecosystem.config.js` 文件:
|
||||
|
||||
```javascript
|
||||
module.exports = {
|
||||
apps: [{
|
||||
name: 'upage',
|
||||
script: './server.mjs',
|
||||
instances: 1,
|
||||
autorestart: true,
|
||||
watch: false,
|
||||
max_memory_restart: '1G',
|
||||
env: {
|
||||
NODE_ENV: 'production',
|
||||
OPERATING_ENV: 'production',
|
||||
PORT: 3000,
|
||||
LLM_DEFAULT_PROVIDER: 'OpenAILike',
|
||||
OPENAI_LIKE_API_BASE_URL: 'your-openai-like-api-base-url',
|
||||
OPENAI_LIKE_API_KEY: 'your-openai-like-api-key',
|
||||
LLM_DEFAULT_MODEL: 'your-default-model',
|
||||
LLM_MINOR_MODEL: 'your-minor-model',
|
||||
}
|
||||
}]
|
||||
};
|
||||
```
|
||||
|
||||
### 启动服务
|
||||
|
||||
```bash
|
||||
pm2 start ecosystem.config.js
|
||||
```
|
||||
|
||||
### 查看日志
|
||||
|
||||
```bash
|
||||
pm2 logs upage
|
||||
```
|
||||
|
||||
### 监控服务
|
||||
|
||||
```bash
|
||||
pm2 monit
|
||||
```
|
||||
|
||||
## 升级 UPage
|
||||
|
||||
当有新版本发布时,您可以按照以下步骤升级 UPage:
|
||||
|
||||
```bash
|
||||
# 拉取最新代码
|
||||
git pull origin main
|
||||
|
||||
# 安装依赖
|
||||
pnpm install
|
||||
|
||||
# 构建项目
|
||||
pnpm build
|
||||
|
||||
# 开发环境使用
|
||||
pnpm dev
|
||||
|
||||
# 生产环境使用
|
||||
pnpm preview
|
||||
|
||||
# 或者如果使用 PM2
|
||||
pm2 restart upage
|
||||
```
|
||||
|
||||
## 故障排除
|
||||
|
||||
### 依赖安装失败
|
||||
|
||||
如果依赖安装失败,可以尝试清除 pnpm 缓存:
|
||||
|
||||
```bash
|
||||
pnpm store prune
|
||||
pnpm install
|
||||
```
|
||||
|
||||
### 构建失败
|
||||
|
||||
如果构建失败,可以尝试清除构建缓存:
|
||||
|
||||
```bash
|
||||
pnpm clean
|
||||
pnpm build
|
||||
```
|
||||
|
||||
### 数据库错误
|
||||
|
||||
如果遇到数据库相关错误,可以尝试重新初始化数据库
|
||||
|
||||
```bash
|
||||
pnpm prisma migrate reset
|
||||
```
|
||||
|
||||
:::danger
|
||||
请注意,这将清空所有数据并重置数据库,切勿在生产环境中使用。
|
||||
:::
|
||||
|
||||
### 日志查看
|
||||
|
||||
检查日志文件以获取更多错误信息:
|
||||
|
||||
```bash
|
||||
cat logs/combined-*.log
|
||||
cat logs/error-*.log
|
||||
```
|
||||
Reference in New Issue
Block a user