Blame view

环境相关.md 3.09 KB
be52af70   tangwang   first commit
1
  
670c701f   tangwang   文档完善
2
3
4
5
6
7
  
  
  ## 2. Python 运行环境
  
  ```bash
  # 1. 激活 Conda
2c9fad19   tangwang   撰写接口文档
8
9
10
  source /home/tw/miniconda3/etc/profile.d/conda.sh
  conda activate searchengine
  
670c701f   tangwang   文档完善
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
  # 如果部署到新机器,不存在 searchengine 环境时,需要初始化环境:
  cd /home/tw/SearchEngine
  pip install -r requirements.txt
  ```
  
  ---
  
  ## 3. 外部服务与端口
  
  | 服务 | 默认地址 | 说明 |
  |------|----------|------|
  | Elasticsearch | `http://localhost:9200` | 可通过 Docker 单节点启动 |
  | MySQL | `120.79.247.228:3316` | 存放店匠 SPU/SKU 数据 |
  | Redis(可选) | `localhost:6479` | Embedding/翻译缓存 |
  
  示例:使用 Docker 启动 Elasticsearch
  
  ```bash
  docker run -d \
    --name elasticsearch \
    -p 9200:9200 \
    -e "discovery.type=single-node" \
    -e "ES_JAVA_OPTS=-Xms2g -Xmx2g" \
    elasticsearch:8.11.0
  ```
  
  ---
  
  ## 4. 环境变量与 `.env` 模板
  
  在项目根目录创建 `.env`,并根据环境替换敏感信息:
  
  ```env
  # MySQL
  DB_HOST=120.79.247.228
  DB_PORT=3316
  DB_DATABASE=saas
  DB_USERNAME=saas
  DB_PASSWORD=P89cZHS5d7dFyc9R
  
  # Elasticsearch
  ES_HOST=http://localhost:9200
  ES_USERNAME=essa
  ES_PASSWORD=4hOaLaf41y2VuI8y
  
  # Redis(可选)
  REDIS_HOST=localhost
  REDIS_PORT=6479
  REDIS_PASSWORD=BMfv5aI31kgHWtlx
  
  # DeepL 翻译
  DEEPL_AUTH_KEY=c9293ab4-ad25-479b-919f-ab4e63b429ed
  
  # API
  API_HOST=0.0.0.0
  API_PORT=6002
  ```
  
  ---
  
  ## 5. 服务凭证速查
  
  | 项目 | 值 |
  |------|----|
  | **MySQL** | host `120.79.247.228`, port `3316`, user `saas`, password `P89cZHS5d7dFyc9R` |
  | **Elasticsearch** | host `http://localhost:9200`, user `essa`, password `4hOaLaf41y2VuI8y` |
  | **Redis(可选)** | host `localhost`, port `6479`, password `BMfv5aI31kgHWtlx` |
  | **DeepL** | `c9293ab4-ad25-479b-919f-ab4e63b429ed` |
  
  > 所有凭证仅用于本地/测试环境,生产环境需替换并妥善保管。
  
  ---
  
  ## 6. 店匠数据源说明
  
  SearchEngine 以 MySQL 中的店匠标准表为权威数据源:
  
  - `shoplazza_product_spu`:SPU 商品主表
  - `shoplazza_product_sku`:SKU 变体表
  
  ### `shoplazza_product_sku` 字段节选
  
  | 字段 | 类型 | 描述 |
  |------|------|------|
  | `id` | bigint(20) | SKU 主键 |
  | `spu_id` | bigint(20) | 对应 SPU |
  | `shop_id` | bigint(20) | 店铺 ID |
  | `shoplazza_product_id` | varchar(64) | 店匠商品 ID |
  | `title` | varchar(500) | 变体标题 |
  | `sku` | varchar(100) | SKU 编码 |
  | `price` | decimal(10,2) | 售价 |
  | `compare_at_price` | decimal(10,2) | 原价 |
  | `option1/2/3` | varchar(255) | 颜色/尺码等选项 |
  | `inventory_quantity` | int(11) | 库存 |
  | `image_src` | varchar(500) | 图片 |
  | `tenant_id` | bigint(20) | 租户 |
  | `create_time` | datetime | 创建时间 |
  | `update_time` | datetime | 更新时间 |
  | `deleted` | bit(1) | 逻辑删除标记 |
  
  > 完整字段、索引映射与 ES 对应关系详见 `INDEX_FIELDS_DOCUMENTATION.md`。
  
  ---
  
  ## 7. 相关脚本
  
  - `scripts/mock_data.sh`:一次性生成 Tenant1 Mock + Tenant2 CSV 数据并导入 MySQL
  - `scripts/ingest.sh <tenant_id> [recreate]`:从 MySQL 写入 Elasticsearch
  - `run.sh` / `restart.sh`:服务启动/重启
  
  更多脚本参数、日志与验证命令参见 `USAGE_GUIDE.md` 与 `TEST_DATA_GUIDE.md`
2c9fad19   tangwang   撰写接口文档

be52af70   tangwang   first commit