feat: 开源项目门户站首版(iotLCM / 秀杰 DTU / XiuAdmin 三项目,注册表驱动)
This commit is contained in:
@@ -0,0 +1,71 @@
|
||||
# 雪羊科技开源项目门户
|
||||
|
||||
开源项目门户站源码。当前收录 **iotLCM**(物联网卡全生命周期管理平台)、**秀杰 DTU 管理平台**、**XiuAdmin**(中后台开发框架)。
|
||||
|
||||
- 站点框架:VitePress 1.6(与 iotLCM 的文档站同构)
|
||||
- 产物:纯静态文件
|
||||
- 许可:Apache-2.0
|
||||
|
||||
## 目录
|
||||
|
||||
```text
|
||||
.
|
||||
├── data/projects.ts # 项目注册表 —— 门户唯一项目清单来源
|
||||
├── pages/
|
||||
│ ├── index.md # 门户首页
|
||||
│ ├── projects/index.md # 全部项目
|
||||
│ ├── projects/<id>/index.md # 各项目详情页
|
||||
│ ├── guide/portal-deploy.md # 门户自身的构建与部署
|
||||
│ └── about.md # 关于、许可、贡献说明
|
||||
├── .vitepress/theme/components/ # 项目卡片与列表组件
|
||||
├── scripts/check-registry.mjs # 注册表与详情页一致性校验
|
||||
├── deploy/docker-compose.yml # 容器部署编排
|
||||
└── Dockerfile # 多阶段构建镜像
|
||||
```
|
||||
|
||||
## 新增一个项目
|
||||
|
||||
两步,不需要改动站点其它部分:
|
||||
|
||||
1. 在 `data/projects.ts` 里加一条记录(名称、定位、说明、代码仓、许可证、技术栈、状态、详情页路径、子页面)
|
||||
2. 写 `pages/projects/<id>/index.md` 详情页
|
||||
|
||||
首页卡片、项目列表页、侧边栏都会自动带上新项目。
|
||||
|
||||
构建前会自动校验注册表与详情页目录是否一一对应,不一致直接报错:
|
||||
|
||||
```bash
|
||||
npm run check
|
||||
```
|
||||
|
||||
## 本地开发
|
||||
|
||||
```bash
|
||||
npm ci
|
||||
npm run dev # http://127.0.0.1:5173
|
||||
```
|
||||
|
||||
## 构建
|
||||
|
||||
```bash
|
||||
npm run build # 产物在 .vitepress/dist/
|
||||
```
|
||||
|
||||
## 部署
|
||||
|
||||
```bash
|
||||
docker compose -f deploy/docker-compose.yml up -d --build
|
||||
```
|
||||
|
||||
默认发布在宿主机 `127.0.0.1:8020`。站点资源前缀由 `SITE_BASE` 决定:
|
||||
|
||||
| 形态 | 参数 | 访问方式 |
|
||||
| --- | --- | --- |
|
||||
| 子路径(过渡,无独立域名) | `/www/`(默认) | 由已有网关转发 `/www/` 到本容器 |
|
||||
| 独立域名 | `/` | 域名根路径 |
|
||||
|
||||
```bash
|
||||
SITE_BASE=/ docker compose -f deploy/docker-compose.yml up -d --build
|
||||
```
|
||||
|
||||
详见 [门户部署](pages/guide/portal-deploy.md)。
|
||||
Reference in New Issue
Block a user