# 甲辰藏品管理系统 v1.0.0 部署指南

**文档版本**: 1.0  
**适用版本**: v1.0.0+  
**更新日期**: 2026-03-16

---

## 环境要求

| 组件 | 最低版本 | 推荐版本 |
|------|---------|---------|
| Python | 3.8+ | 3.12 |
| Node.js | 18+ | 24 |
| PostgreSQL | 12+ | 15 |
| Nginx | 1.18+ | 1.20+ |

---

## 服务器架构

| 角色 | IP | 状态 | 服务 |
|------|------|------|------|
| 数据库 PostgreSQL 主 | 47.98.171.101 | ✅ 运行中 | PostgreSQL 16 |
| 后端 FastAPI App1 | 42.121.116.25 | ✅ 运行中 | FastAPI (端口 3000) |
| 前端 Nginx Web1 | 8.154.46.3 | ✅ 运行中 | Nginx (端口 80) |
| 域名入口 | 39.106.51.77 | ⏸️ 待配置 | SSH 认证失败 |

---

## 部署详情

### 1. 数据库服务器 (47.98.171.101)

- PostgreSQL 16 已安装并运行
- 数据库 `zodiac` 已创建
- 用户 `postgres` 密码 `postgres`
- 已配置远程访问（0.0.0.0/0）
- 数据表：users, collections, collection_images, operations, custom_fields

### 2. 后端服务器 (42.121.116.25)

- 代码路径：`/opt/zodiac-collector/backend-fastapi`
- Python 版本：3.11.13
- 服务：systemd (zodiac-backend.service)
- 自启动：已启用
- 数据库连接：postgresql://postgres:postgres@47.98.171.101:5432/zodiac

### 3. 前端服务器 (8.154.46.3)

- 代码路径：`/opt/zodiac-collector`
- Web 前端：`/var/www/frontend` (端口 80)
- 移动端：`/var/www/mobile/dist` (/mobile/)
- Nginx 已配置反向代理到后端 API
- 自启动：已启用

---

## 访问地址

- **Web 管理端**: http://8.154.46.3/
- **移动端**: http://8.154.46.3/mobile/
- **后端 API**: http://42.121.116.25:3000/api/

---

## 验证结果

✅ 后端 API 正常响应（需要认证）  
✅ 前端 Nginx 反向代理正常  
✅ 数据库连接正常  
✅ 所有服务已配置自启动  

---

## 问题修复 (2026-03-16 08:00)

### 1. 藏品标签黑屏问题 ✅ 已修复

**问题原因**: Collections 组件的 `load()` 函数缺少错误处理，API 请求失败时导致组件崩溃。

**修复方案**: 
- 添加 try-catch 错误处理
- 重新构建并部署前端

### 2. Logo 显示问题 ✅ 已修复

**问题原因**: Nginx 配置文件冲突，`conf.d/` 目录下的旧配置指向错误的后端地址。

**修复方案**:
- 删除旧的配置文件 (`mobile.conf`, `zodiac.conf`)
- 更新 Nginx 配置，正确代理 API 请求到新后端地址
- 重启 Nginx 服务

### 3. 数据库初始化 ✅ 已完成

**操作**: 创建默认管理员账号
- 用户名：`admin`
- 密码：`admin123`

---

## 默认管理员账号

**用户名**: `admin`  
**密码**: `admin123`  

⚠️ **重要**: 首次登录后请立即修改密码！

---

**部署人**: 菜鸟小 D  
**部署状态**: ✅ 完成（域名入口待配置）  
**最后更新**: 2026-03-16 08:05 CST
