124 lines
2.9 KiB
Markdown
124 lines
2.9 KiB
Markdown
# 项目配置指南 (CONFIG.md)
|
|
|
|
本文档定义了项目的环境变量配置、数据库连接信息以及资源路径设置。
|
|
建议在 `backend` 目录下创建 `.env` 文件来管理这些敏感信息。
|
|
|
|
---
|
|
|
|
## 1. 基础设施服务 (Infrastructure)
|
|
|
|
本项目依赖的数据库服务运行在本地 Docker 容器中。
|
|
|
|
### 1.1 PostgreSQL (Database)
|
|
* **Docker Container Name:** `postgis-db-1`
|
|
* **Default Port:** `5432`
|
|
* **建议配置 (.env):**
|
|
|
|
```ini
|
|
# Database Connection String
|
|
# 格式: postgresql://<username>:<password>@<host>:<port>/<database_name>
|
|
DATABASE_URL=postgresql://postgres:postgres@localhost:5432/summit_db
|
|
|
|
# 详细字段 (供参考)
|
|
POSTGRES_SERVER=localhost
|
|
POSTGRES_USER=postgres
|
|
POSTGRES_PASSWORD=postgres
|
|
POSTGRES_DB=summit_db
|
|
POSTGRES_PORT=5432
|
|
```
|
|
|
|
### 1.2 Redis (Cache)
|
|
* **Docker Container Name:** `my-redis`
|
|
* **Default Port:** `6379`
|
|
* **建议配置 (.env):**
|
|
|
|
```ini
|
|
# Redis Connection String
|
|
# 格式: redis://<host>:<port>/<db_index>
|
|
REDIS_URL=redis://localhost:6379/14
|
|
|
|
# 详细字段 (供参考)
|
|
REDIS_HOST=localhost
|
|
REDIS_PORT=6379
|
|
REDIS_DB=14
|
|
# REDIS_PASSWORD= # 如果容器配置了密码
|
|
```
|
|
|
|
---
|
|
|
|
## 2. 后端应用配置 (Backend)
|
|
|
|
### 2.1 基础设置
|
|
```ini
|
|
# API 运行环境 (development / production)
|
|
ENVIRONMENT=development
|
|
# API 监听端口
|
|
PORT=8000
|
|
# 跨域配置 (CORS) - 允许的前端地址
|
|
BACKEND_CORS_ORIGINS=["http://localhost:5173", "http://127.0.0.1:5173"]
|
|
```
|
|
|
|
### 2.2 静态资源路径 (Static Resources)
|
|
所有生成的瓦片、GeoJSON 等静态资源统一存放于 `backend/upload` 目录。
|
|
|
|
```ini
|
|
# 静态文件存储根目录 (相对 backend/ 目录或绝对路径)
|
|
UPLOAD_DIR=./upload
|
|
|
|
# 访问基础 URL (用于生成完整的资源链接)
|
|
# 前端通过 Proxy 访问,通常为 /static 或 /resources
|
|
STATIC_URL_PREFIX=/static
|
|
```
|
|
|
|
### 2.3 JWT / 安全 (Security)
|
|
```ini
|
|
# 用于加密 Token 的密钥 (生成方式: openssl rand -hex 32)
|
|
SECRET_KEY=your_super_secret_key_here
|
|
ALGORITHM=HS256
|
|
ACCESS_TOKEN_EXPIRE_MINUTES=1440
|
|
```
|
|
|
|
---
|
|
|
|
## 3. 前端配置 (Frontend)
|
|
|
|
前端 (Vite) 通过代理访问后端,配置位于 `frontend/vite.config.ts`。
|
|
|
|
### 3.1 代理设置 (Proxy)
|
|
前端开发服务器会将特定请求转发到后端 API 和静态资源目录。
|
|
|
|
```typescript
|
|
// vite.config.ts 示例
|
|
export default defineConfig({
|
|
server: {
|
|
proxy: {
|
|
// API 转发
|
|
'/api': {
|
|
target: 'http://localhost:8000',
|
|
changeOrigin: true,
|
|
},
|
|
// 静态资源转发 (对应后端的 upload 目录挂载点)
|
|
'/static': {
|
|
target: 'http://localhost:8000',
|
|
changeOrigin: true,
|
|
}
|
|
}
|
|
}
|
|
})
|
|
```
|
|
|
|
---
|
|
|
|
## 4. 数据处理流水线配置 (Data Pipeline)
|
|
|
|
用于 Python 数据处理脚本 (`data/scripts/`)。
|
|
|
|
```ini
|
|
# NASA Earthdata 登录凭证 (用于下载 SRTM 数据)
|
|
NASA_USERNAME=your_nasa_username
|
|
NASA_PASSWORD=your_nasa_password
|
|
|
|
# GDAL 配置 (如果非标准安装路径)
|
|
# GDAL_DATA=/usr/share/gdal
|
|
```
|