@@ -34,15 +34,11 @@ cd OpenIsle
想要最快速地同时体验前端和后端,可直接使用仓库提供的 Docker Compose。该方案会一次性拉起数据库、消息队列、搜索、后端、WebSocket 以及前端 Dev Server, 适合需要全链路联调的场景。
1. 准备环境变量文件:
```shell
cp .env.example .env
` ``
` .env.example` 是模板,可在 ` .env` 中按需覆盖如端口、密钥等配置。确保 ` NUXT_PUBLIC_API_BASE_URL`、` NUXT_PUBLIC_WEBSOCKET_URL` 等仍指向 ` localhost`,方便前端直接访问容器映射端口。
2. 启动 Dev Profile:
` ``shell
docker compose \
-f docker/docker-compose.yaml \
@@ -56,7 +52,6 @@ cd OpenIsle
--env-file .env \
--profile dev up -d
` ``
该命令会创建名为 ` frontend_dev` 的容器并运行 ` npm run dev`,浏览器访问 http://127.0.0.1:3000 即可查看页面。
修改代码后,可以强制重新创建所有容器,执行:
@@ -69,14 +64,11 @@ cd OpenIsle
` ``
3. 查看服务状态:
` ``shell
docker compose -f docker/docker-compose.yaml --env-file .env ps
docker compose -f docker/docker-compose.yaml --env-file .env logs -f frontend_dev
` ``
4. 停止所有容器:
` ``shell
docker compose -f docker/docker-compose.yaml --env-file .env --profile dev down
` ``
@@ -100,8 +92,13 @@ IDEA 打开 `backend/` 文件夹。
#### 配置环境变量
1. 在 IDEA 中配置「Environment file」: 将 ` Run/Debug Configuration` 的 ` Environment variables` 指向刚刚复制的 ` .env`,即可让 IDE 读取该 文件。
2. 需要调整端口或功能开关时,优先修改 ` .env`,例如:
1. 生成环境变量 文件:
` ``shell
cp open-isle.env.example open-isle.env
` ``
` open-isle.env` 才是实际被读取的文件。可在其中补充数据库、第三方服务等配置,` open-isle.env` 已被 Git 忽略,放心修改。
2. 在 IDEA 中配置「Environment file」: 将 ` Run/Debug Configuration` 的 ` Environment variables` 指向刚刚复制的 ` open-isle.env`,即可让 IDE 读取该文件。
3. 需要调整端口或功能开关时,优先修改 ` open-isle.env`,例如:
` ``ini
SERVER_PORT=8081
LOG_LEVEL=DEBUG
@@ -109,7 +106,7 @@ IDEA 打开 `backend/` 文件夹。
也可以修改 ` src/main/resources/application.properties`,但该文件会被 Git 追踪,通常不推荐。


#### 配置 IDEA 参数
@@ -119,33 +116,15 @@ IDEA 打开 `backend/` 文件夹。
-Dserver.port=8081
` ``




完成环境变量和运行参数设置后,即可启动 Spring Boot 应用。


## 启动前端服务
> [!IMPORTANT]
> **⚠️ 环境要求: Node.js 版本最低 20.0.0(因为 Nuxt 框架要求)**
` ``shell
cd frontend_nuxt/
` ``
安装依赖并启动开发服务器:
` ``shell
npm install --verbose
npm run dev
` ``
默认情况下,浏览器访问 http://127.0.0.1:3000 即可访问前端页面。
### 连接预发或正式环境
## 前端连接预发或正式环境
前端默认读取 ` .env` 中的接口地址,可通过修改以下变量快速切换到预发或正式环境:
@@ -155,10 +134,8 @@ npm run dev
NUXT_PUBLIC_API_BASE_URL=https://www.staging.open-isle.com
NUXT_PUBLIC_WEBSOCKET_URL=https://www.staging.open-isle.com
` ``
将 ` staging` 替换为 ` www` 即可连接正式环境。其他变量(如 OAuth Client ID、站点地址等) 可根据需求调整。
2. 已经存在 ` .env` 时,可直接编辑上述变量并重启 ` npm run dev` 让配置生效。
## 其他配置
@@ -166,41 +143,42 @@ npm run dev
- 修改 ` application.properties` 配置


- 修改 ` .env` 配置


- 配置第三方登录回调地址




### 配置Resend邮箱服务
https://resend.com/emails 创建账号并登录
- ` Domains` -> ` Add Domain`


- 填写域名


- 等待一段时间后解析成功,创建 key
` API Keys` -> ` Create API Key`,输入名称,设置 ` Permission` 为 ` Sending access`
**Key 只能查看一次,务必保存下来**






- 修改 ` .env` 配置中的 ` RESEND_API_KEY` 和 ` RESEND_FROM_EMAIL`
` RESEND_FROM_EMAIL`: **noreply@域名**
` RESEND_API_KEY`: **刚刚复制的 Key**


## API文档
### OpenAPI文档
https://docs.open-isle.com
### 部署时间线以及文档时效性