Major Changes: - Add StreamingService with OpenAI Compatible format - Upgrade Chat component V2 with Ant Design X integration - Implement AIA module with 12 intelligent agents - Update API routes to unified /api/v1 prefix - Update system documentation Backend (~1300 lines): - common/streaming: OpenAI Compatible adapter - modules/aia: 12 agents, conversation service, streaming integration - Update route versions (RVW, PKB to v1) Frontend (~3500 lines): - modules/aia: AgentHub + ChatWorkspace (100% prototype restoration) - shared/Chat: AIStreamChat, ThinkingBlock, useAIStream Hook - Update API endpoints to v1 Documentation: - AIA module status guide - Universal capabilities catalog - System overview updates - All module documentation sync Tested: Stream response verified, authentication working Status: AIA V2.0 core completed (85%)
1385 lines
31 KiB
Markdown
1385 lines
31 KiB
Markdown
# <20>滨垢 Nginx - SAE <20>函蔡<E587BD>滢<EFBFBD><E6BBA2>见<EFBFBD>
|
||
|
||
**<EFBFBD><EFBFBD>﹝<EFBFBD><EFBFBD>𧋦**: v1.0
|
||
**<EFBFBD>𥕦遣<EFBFBD>園𡢿**: 2025-12-23
|
||
**<EFBFBD><EFBFBD>鍂<EFBFBD><EFBFBD>凒**: AIclinicalresearch 撟喳蝱<E596B3>滨垢<E6BBA8>滚𦛚
|
||
**<EFBFBD>函蔡<EFBFBD>格<EFBFBD>**: <20>輸<EFBFBD>鈭?SAE嚗𠄎erverless 摨𠉛鍂撘閙<E69298>嚗?
|
||
**<EFBFBD>𨅯<EFBFBD>隞枏<EFBFBD>**: <20>輸<EFBFBD>鈭?ACR 銝芯犖<E88AAF>?
|
||
|
||
---
|
||
|
||
## <20><> <20>桀<EFBFBD>
|
||
|
||
1. [<5B>滨蔭<E6BBA8>∩辣璉<E8BEA3><E79289>包(#1-<2D>滨蔭<E6BBA8>∩辣璉<E8BEA3><E79289>?
|
||
2. [<EFBFBD>𨅯<EFBFBD>靽⊥<EFBFBD>蝖株恕](#2-<2D>𨅯<EFBFBD>靽⊥<E99DBD>蝖株恕)
|
||
3. [<EFBFBD>𥕦遣SAE摨𠉛鍂](#3-<2D>𥕦遣sae摨𠉛鍂)
|
||
4. [<EFBFBD>滨蔭<EFBFBD>臬<EFBFBD><EFBFBD>㗛<EFBFBD>](#4-<2D>滨蔭<E6BBA8>臬<EFBFBD><E887AC>㗛<EFBFBD>)
|
||
5. [<5B>滨蔭<E6BBA8>亙熒璉<E78692><E79289>包(#5-<2D>滨蔭<E6BBA8>亙熒璉<E78692><E79289>?
|
||
6. [<EFBFBD>滨蔭<EFBFBD>祉<EFBFBD>霈輸䔮](#6-<2D>滨蔭<E6BBA8>祉<EFBFBD>霈輸䔮)
|
||
7. [<EFBFBD>函蔡摨𠉛鍂](#7-<2D>函蔡摨𠉛鍂)
|
||
8. [撉諹<EFBFBD><EFBFBD>函蔡](#8-撉諹<E69289><E8ABB9>函蔡)
|
||
9. [撣貉<EFBFBD><EFBFBD>桅<EFBFBD><EFBFBD>埝䰻](#9-撣貉<E692A3><E8B289>桅<EFBFBD><E6A185>埝䰻)
|
||
10. [<EFBFBD>亙虜餈鞟輕](#10-<2D>亙虜餈鞟輕)
|
||
|
||
---
|
||
|
||
## 1. <20>滨蔭<E6BBA8>∩辣璉<E8BEA3><E79289>?
|
||
|
||
### <20>?**<2A>函蔡<E587BD>滚<EFBFBD>憿餃<E686BF><E9A483>鞟<EFBFBD><E99E9F><EFBFBD><EFBFBD>**
|
||
|
||
| 璉<><E79289>仿★ | <20>嗆<EFBFBD>?| 霂湔<E99C82> |
|
||
|--------|------|------|
|
||
| **ACR<43>𨅯<EFBFBD>撌脫綫<E884AB>?* | <20>𡢅<EFBFBD> | <20>𨅯<EFBFBD><F0A885AF>啣<EFBFBD>嚗䫤crpi-cd5ij4pjt65mweeo.cn-beijing.personal.cr.aliyuncs.com/ai-clinical/ai-clinical_frontend-nginx:v1.0.0` |
|
||
| **<2A>𡒊垢<F0A1928A>滚𦛚撌脤<E6928C>蝵?* | 漎?| <20><>閬<EFBFBD>繮<EFBFBD>硋<EFBFBD>蝡狽PC<50><43><EFBFBD><EFBFBD>啣<EFBFBD>嚗<EFBFBD>聢撘𧶏<E69298>`172.17.x.x:3001`嚗?|
|
||
| **VPC蝵𤑳<E89DB5>撌脣<E6928C>撱?* | <20>𡢅<EFBFBD> | VPC ID: `vpc-2ze055cptkew9c38w4r06` |
|
||
| **鈭斗揢<E69697>箏歇<E7AE8F>𥕦遣** | <20>𡢅<EFBFBD> | 鈭斗揢<E69697>?ID: `vsw-2zevacop039bxrmj6yc0c` (<28>舐鍂<E88890>慚) |
|
||
| **摰匧<E691B0>蝏<EFBFBD>歇<EFBFBD>𥕦遣** | <20>𡢅<EFBFBD> | 摰匧<E691B0>蝏?ID: `sg-2zedk6fi8sgmmcwdu7tu` |
|
||
|
||
### <20><> **敹<><E695B9><EFBFBD><EFBFBD><EFBFBD>蝵桐縑<E6A190>?*
|
||
|
||
<EFBFBD><EFBFBD><EFBFBD>隞乩<EFBFBD>靽⊥<EFBFBD>嚗<EFBFBD>銁<EFBFBD>函蔡餈<EFBFBD><EFBFBD>銝剝<EFBFBD>閬<EFBFBD><EFBFBD>嚗?
|
||
|
||
```yaml
|
||
# ACR <20>𨅯<EFBFBD>靽⊥<E99DBD>
|
||
ACR<EFBFBD>笔<EFBFBD>嚗<EFBFBD><EFBFBD><EFBFBD>厩<EFBFBD>蝏頣<EFBFBD>: crpi-cd5ij4pjt65mweeo-vpc.cn-beijing.personal.cr.aliyuncs.com
|
||
<EFBFBD>賢<EFBFBD>蝛粹𡢿: ai-clinical
|
||
<EFBFBD>𨅯<EFBFBD><EFBFBD>滨妍: ai-clinical_frontend-nginx
|
||
<EFBFBD>𨅯<EFBFBD><EFBFBD><EFBFBD>𧋦: v1.0.0
|
||
|
||
# VPC蝵𤑳<E89DB5>靽⊥<E99DBD>
|
||
VPC ID: vpc-2ze055cptkew9c38w4r06
|
||
鈭斗揢<EFBFBD>截D: vsw-2zevacop039bxrmj6yc0c
|
||
摰匧<EFBFBD>蝏<EFBFBD>D: sg-2zedk6fi8sgmmcwdu7tu
|
||
|
||
# <20>𡒊垢<F0A1928A>滚𦛚靽⊥<E99DBD>嚗<EFBFBD><E59A97><EFBFBD>𡒊垢SAE摨𠉛鍂<F0A0899B>瑕<EFBFBD>嚗?
|
||
<EFBFBD>𡒊垢<EFBFBD><EFBFBD><EFBFBD><EFBFBD>啣<EFBFBD>: 敺<>繮<EFBFBD>吔<EFBFBD><E59094>澆<EFBFBD>嚗?72.17.x.x嚗?
|
||
<EFBFBD>𡒊垢蝡臬藁: 3001
|
||
```
|
||
|
||
---
|
||
|
||
## 2. <20>𨅯<EFBFBD>靽⊥<E99DBD>蝖株恕
|
||
|
||
### <20>𣑐 **ACR <20>𨅯<EFBFBD>霂行<E99C82>**
|
||
|
||
```yaml
|
||
<EFBFBD>滚𦛚蝐餃<EFBFBD>: 銝芯犖<E88AAF><E78A96><EFBFBD><EFBFBD>滩晶嚗?
|
||
<EFBFBD>賢<EFBFBD>蝛粹𡢿: ai-clinical
|
||
隞枏<EFBFBD><EFBFBD>滨妍: ai-clinical_frontend-nginx
|
||
|
||
<EFBFBD>𨅯<EFBFBD>摰峕㟲<EFBFBD>啣<EFBFBD>嚗<EFBFBD><EFBFBD><EFBFBD>厩<EFBFBD>蝏頣<EFBFBD>:
|
||
crpi-cd5ij4pjt65mweeo-vpc.cn-beijing.personal.cr.aliyuncs.com/ai-clinical/ai-clinical_frontend-nginx:v1.0.0
|
||
|
||
<EFBFBD>𨅯<EFBFBD><EFBFBD><EFBFBD>倌:
|
||
- v1.0.0 (<28>煺漣<E785BA><E6BCA3>𧋦嚗𩥇igest: 68e97e28...)
|
||
- latest (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>啁<EFBFBD><E59581>?
|
||
|
||
<EFBFBD>𨅯<EFBFBD>憭批<EFBFBD>: 91.9 MB
|
||
<EFBFBD><EFBFBD>遣<EFBFBD>園𡢿: 2025-12-23
|
||
```
|
||
|
||
### <20><> **撉諹<E69289><E8ABB9>𨅯<EFBFBD>摮睃銁**
|
||
|
||
<EFBFBD>餃<EFBFBD>ACR<EFBFBD>批<EFBFBD><EFBFBD>圈<EFBFBD>霂<EFBFBD><EFBFBD>https://cr.console.aliyun.com/
|
||
|
||
1. 餈𥕦<E9A488><F0A595A6>𣂷葵鈭箇<E988AD><E7AE87>爗<EFBFBD><E78897>鞾<EFBFBD><E99EBE>譍<EFBFBD>摨瓐<E691A8>?
|
||
2. <20>曉<EFBFBD> `ai-clinical_frontend-nginx`
|
||
3. 蝖株恕摮睃銁 `v1.0.0` <20><>倌
|
||
|
||
---
|
||
|
||
## 3. <20>𥕦遣SAE摨𠉛鍂
|
||
|
||
### <20><> **<2A>餃<EFBFBD>SAE<41>批<EFBFBD><E689B9>?*
|
||
|
||
霈輸䔮嚗冴ttps://sae.console.aliyun.com/
|
||
|
||
<EFBFBD>㗇𥋘<EFBFBD>啣<EFBFBD>嚗?*<2A>𤾸<EFBFBD>2嚗<32><E59A97>鈭穿<E988AD>**
|
||
|
||
### <20><> **<2A>𥕦遣<F0A595A6>啣<EFBFBD><E595A3>?*
|
||
|
||
<EFBFBD>孵稬<EFBFBD>𣂼<EFBFBD>撱箏<EFBFBD><EFBFBD>具<EFBFBD>𡢅<EFBFBD><EFBFBD>劐誑銝𧢲郊撉文‵<EFBFBD>辷<EFBFBD>
|
||
|
||
#### **甇仿炊1嚗𡁜<E59A97><F0A1819C>典抅<E585B8>砌縑<E7A08C>?*
|
||
|
||
```yaml
|
||
摨𠉛鍂<EFBFBD>滨妍: frontend-nginx-service
|
||
摨𠉛鍂<EFBFBD>讛膩: AI銝游<E98A9D><E6B8B8>𠉛弦撟喳蝱 - <20>滨垢<E6BBA8>蹱<EFBFBD><E8B9B1><EFBFBD>皞鞉<E79A9E><E99E89>∴<EFBFBD>React SPA + Nginx嚗?
|
||
<EFBFBD>賢<EFBFBD>蝛粹𡢿: 暺䁅恕<E48185>賢<EFBFBD>蝛粹𡢿嚗<F0A1A2BF><E59A97>銝𤾸<E98A9D>蝡臬<E89DA1>銝<EFBFBD><E98A9D>賢<EFBFBD>蝛粹𡢿嚗?
|
||
```
|
||
|
||
#### **甇仿炊2嚗𡁜<E59A97><F0A1819C>券<EFBFBD>蝵脫䲮撘?*
|
||
|
||
```yaml
|
||
<EFBFBD>函蔡<EFBFBD>孵<EFBFBD>: <20>𨅯<EFBFBD>
|
||
<EFBFBD><EFBFBD><EFBFBD>舀<EFBFBD>霂剛<EFBFBD>: 銝漤<E98A9D>
|
||
```
|
||
|
||
#### **甇仿炊3嚗𡁜<E59A97><F0A1819C>典<EFBFBD>靘贝<E99D98><E8B49D>?*
|
||
|
||
```yaml
|
||
摰硺<EFBFBD>閫<EFBFBD>聢: 0.5<EFBFBD>?1GB
|
||
|
||
霂湔<E99C82>嚗?
|
||
- <20>滨垢Nginx<6E>删鍂韏<E98D82><E99F8F><EFBFBD><EFBFBD><EFBFBD>
|
||
- 0.5<EFBFBD>?GB摰<42><E691B0>憭毺鍂
|
||
- 撖寞<E69296>嚗𡁜<E59A97>蝡舫<E89DA1>閬?<3F>?GB嚗釶ython<6F><6E>閬?<3F>?GB
|
||
|
||
摰硺<EFBFBD><EFBFBD>圈<EFBFBD>: 2
|
||
|
||
霂湔<E99C82>嚗?
|
||
- <20><>撠?銝芸<E98A9D>靘衤<E99D98>霂<EFBFBD><E99C82><EFBFBD>舐鍂
|
||
- 1銝芸<E98A9D>靘𧢲<E99D98><F0A7A2B2>𨀣𧒄嚗<F0A79284>𡖂1銝芰誧蝏剜<E89D8F><E5899C>?
|
||
- <20>滨垢敺<E59EA2><E695BA><EFBFBD><EFBFBD>閬<EFBFBD><E996AC>摰?
|
||
```
|
||
|
||
**銝箔<E98A9D>銋<EFBFBD><E98A8B>蝡臬蘨<E887AC><E898A8>閬?.5<EFBFBD>?GB嚗?*
|
||
|
||
| <20>滚𦛚蝐餃<E89D90> | <20>刻<EFBFBD>閫<EFBFBD>聢 | <20>笔<EFBFBD> |
|
||
|---------|---------|------|
|
||
| Node.js <20>𡒊垢 | 2<>?GB | 憭<><E686AD>AI撖寡<E69296><E5AFA1><EFBFBD>㺭<EFBFBD>桀<EFBFBD><E6A180>亥砭<E4BAA5><E7A0AD><EFBFBD><EFBFBD>⊿<EFBFBD>餉<EFBFBD> |
|
||
| Python 敺格<E695BA><E6A0BC>?| 2<>?GB | PDF<44>𣂼<EFBFBD><F0A382BC>浚PU撖<55><E69296><EFBFBD>𧢲<EFBFBD>雿?|
|
||
| **Nginx <20>滨垢** | **0.5<EFBFBD>?GB** | **隞<><E99A9E>靘偦<E99D98><E581A6><EFBFBD><EFBFBD>隞塚<E99A9E>瘨<EFBFBD><E798A8>埈<EFBFBD>撠?* |
|
||
|
||
#### **甇仿炊4嚗间PC蝵𤑳<E89DB5><F0A491B3>滨蔭**
|
||
|
||
```yaml
|
||
VPC: vpc-2ze055cptkew9c38w4r06 (172.17.0.0/16)
|
||
|
||
鈭斗揢<EFBFBD>? vsw-2zevacop039bxrmj6yc0c
|
||
<20>舐鍂<E88890>? <20>𤾸<EFBFBD>2<EFBFBD>舐鍂<E88890>慚
|
||
蝵烐挾: 172.17.0.0/24
|
||
|
||
摰匧<EFBFBD>蝏? sg-2zedk6fi8sgmmcwdu7tu
|
||
|
||
<20>𩤃<EFBFBD> <20>滩<EFBFBD>嚗𡁜<E59A97>憿颱<E686BF><E9A2B1>𡒊垢<F0A1928A>滚𦛚<E6BB9A>典<EFBFBD>銝<EFBFBD>VPC嚗<43>炏<EFBFBD>蹱<EFBFBD>瘜閖<E7989C>帋縑
|
||
```
|
||
|
||
#### **甇仿炊5嚗𡁻<E59A97><F0A181BB>誯<EFBFBD>蝵?*
|
||
|
||
```yaml
|
||
<EFBFBD>𨅯<EFBFBD>蝐餃<EFBFBD>: 摰孵膥<E5ADB5>𨅯<EFBFBD><F0A885AF>滚𦛚銝芯犖<E88AAF>?
|
||
|
||
<EFBFBD>𨅯<EFBFBD><EFBFBD>啣<EFBFBD>: crpi-cd5ij4pjt65mweeo-vpc.cn-beijing.personal.cr.aliyuncs.com/ai-clinical/ai-clinical_frontend-nginx:v1.0.0
|
||
|
||
<20>𩤃<EFBFBD> 瘜冽<E7989C>鈭钅★嚗?
|
||
- 雿輻鍂銝𤘪<E98A9D>蝵𤑳<E89DB5><F0A491B3>笔<EFBFBD>嚗<EFBFBD>蒂-vpc<70>𡒊<EFBFBD>嚗㚁<E59A97>銝滢蝙<E6BBA2>典<EFBFBD>蝵穃<E89DB5><E7A983>?
|
||
- 摰峕㟲颲枏<E9A2B2><E69E8F>𨅯<EFBFBD><F0A885AF>啣<EFBFBD>嚗<EFBFBD><E59A97><EFBFBD>砍𦶢<E7A08D>滨征<E6BBA8>游<EFBFBD><E6B8B8><EFBFBD>倌嚗?
|
||
- 銝滩<E98A9D><E6BBA9>埈<EFBFBD><E59F88><EFBFBD>𧋦<EFBFBD>?:v1.0.0
|
||
|
||
<EFBFBD>𨅯<EFBFBD><EFBFBD><EFBFBD>𧋦: v1.0.0
|
||
|
||
<EFBFBD>𨅯<EFBFBD><EFBFBD>匧<EFBFBD>蝑𣇉裦: <20>餅糓<E9A485>匧<EFBFBD><E58CA7>𨅯<EFBFBD>嚗㇁lways嚗?
|
||
|
||
霂湔<E99C82>嚗?
|
||
- 瘥𤩺活<F0A4A9BA>函蔡<E587BD>賣<EFBFBD><E8B3A3>𡝗<EFBFBD><F0A19D97>圈<EFBFBD><E59C88>?
|
||
- 蝖桐<E89D96>雿輻鍂<E8BCBB><E98D82><EFBFBD>唬誨<E594AC>?
|
||
- <20>踹<EFBFBD>雿輻鍂蝻枏<E89DBB><E69E8F><EFBFBD>唂<EFBFBD>𨅯<EFBFBD>
|
||
```
|
||
|
||
#### **甇仿炊6嚗𡁜<E59A97><F0A1819C>典捆<E585B8>券<EFBFBD>蝵?*
|
||
|
||
```yaml
|
||
摰孵膥蝡臬藁: 80
|
||
|
||
霂湔<E99C82>嚗?
|
||
- Nginx暺䁅恕<E48185>穃𨯬80蝡臬藁
|
||
- 銝𥟠ockerfile銝剔<E98A9D>EXPOSE 80銝<30><E98A9D>?
|
||
|
||
<EFBFBD>讛悅: TCP
|
||
|
||
<EFBFBD>臬𢆡<EFBFBD>賭誘:
|
||
- 銝滚‵嚗<E280B5>蝙<EFBFBD>求ockerfile銝剔<E98A9D>ENTRYPOINT嚗?
|
||
|
||
撌乩<EFBFBD><EFBFBD>桀<EFBFBD>:
|
||
- 銝滚‵嚗<E280B5>蝙<EFBFBD>求ockerfile銝剔<E98A9D>WORKDIR嚗?
|
||
```
|
||
|
||
---
|
||
|
||
## 4. <20>滨蔭<E6BBA8>臬<EFBFBD><E887AC>㗛<EFBFBD>
|
||
|
||
### <20>𩤃<EFBFBD> **<2A><><EFBFBD><EFBFBD>滩<EFBFBD>嚗𡁜<E59A97>蝡舀<E89DA1><E88880>∪𧑐<E288AA><F0A79190><EFBFBD>滨蔭**
|
||
|
||
<EFBFBD>臬<EFBFBD><EFBFBD>㗛<EFBFBD><EFBFBD>滨蔭<EFBFBD>躰秤<EFBFBD>舀<EFBFBD>撣貉<EFBFBD><EFBFBD><EFBFBD><EFBFBD>蝵脣仃韐亙<EFBFBD><EFBFBD>𩤃<EFBFBD>
|
||
|
||
### <20><> **<2A>瑕<EFBFBD><E79195>𡒊垢<F0A1928A><E59EA2><EFBFBD><EFBFBD>啣<EFBFBD>**
|
||
|
||
**<2A>券<EFBFBD>蝵桀<E89DB5>蝡臭<E89DA1><E887AD>㵪<EFBFBD>敹<EFBFBD>◆<EFBFBD><E29786>繮<EFBFBD>硋<EFBFBD>蝡舐<E89DA1>VPC<50><43><EFBFBD><EFBFBD>啣<EFBFBD>嚗?*
|
||
|
||
1. <20>餃<EFBFBD> SAE <20>批<EFBFBD><E689B9>?
|
||
2. 餈𥕦<E9A488>摨𠉛鍂<F0A0899B>𡑒”
|
||
3. <20>曉<EFBFBD> `nodejs-backend-service`嚗<><E59A97><EFBFBD><EFBFBD><EFBFBD>蝡臬<E89DA1><E887AC>典<EFBFBD>蝘堆<E89D98>
|
||
4. <20>孵稬餈𥕦<E9A488>摨𠉛鍂霂行<E99C82>
|
||
5. <20>亦<EFBFBD><E4BAA6>𣂼<EFBFBD><F0A382BC>刻挪<E588BB>桅<EFBFBD>蝵柴<E89DB5>爗<EFBFBD><E78897>𨧞PC<50><43><EFBFBD>霈輸䔮<E8BCB8>啣<EFBFBD><E595A3>?
|
||
|
||
蝷箔<EFBFBD><EFBFBD>澆<EFBFBD>嚗?
|
||
```
|
||
172.17.0.15:3001
|
||
```
|
||
|
||
撠<EFBFBD>P<EFBFBD>啣<EFBFBD><EFBFBD>𣬚垢<EFBFBD><EFBFBD><EFBFBD><EFBFBD>怨扇敶蓥<EFBFBD><EFBFBD>乓<EFBFBD>?
|
||
|
||
### <20>圲 **<2A>滨蔭<E6BBA8>臬<EFBFBD><E887AC>㗛<EFBFBD>**
|
||
|
||
<EFBFBD>沒AE摨𠉛鍂<EFBFBD>滨蔭憿菟𢒰嚗峕𪄳<EFBFBD>啜<EFBFBD>鞟㴓憓<EFBFBD><EFBFBD><EFBFBD>譌<EFBFBD>煾<EFBFBD>蝵桅★嚗?
|
||
|
||
```yaml
|
||
# 敹<><E695B9><EFBFBD>滨蔭嚗<E894AD><E59A97>憛恬<E6869B>
|
||
BACKEND_SERVICE_HOST: 172.17.0.15
|
||
|
||
霂湔<E99C82>嚗?
|
||
- 餈蹱糓<E8B9B1>𡒊垢<F0A1928A>滚𦛚<E6BB9A><F0A69B9A>PC<50><43><EFBFBD>IP<49>啣<EFBFBD>嚗<EFBFBD><E59A97>銝𠹺<E98A9D>甇亥繮<E4BAA5>吔<EFBFBD>
|
||
- 銝滩<E98A9D><E6BBA9>㗖ttp://<2F>滨<EFBFBD>
|
||
- 銝滩<E98A9D><E6BBA9><EFBFBD>鉄蝡臬藁<E887AC>?
|
||
- 憒<><E68692>銝漤<E98A9D>蝵殷<E89DB5>摰孵膥<E5ADB5>臬𢆡隡𡁜仃韐亙僎<E4BA99>仿<EFBFBD>
|
||
|
||
# <20>舫<EFBFBD>厰<EFBFBD>蝵殷<E89DB5><E6AEB7>厰<EFBFBD>霈文<E99C88>潘<EFBFBD>
|
||
BACKEND_SERVICE_PORT: 3001
|
||
|
||
霂湔<E99C82>嚗?
|
||
- <20>𡒊垢<F0A1928A>滚𦛚<E6BB9A><F0A69B9A>垢<EFBFBD><E59EA2>噡
|
||
- 暺䁅恕<E48185>潭糓3001
|
||
- 憒<><E68692>雿删<E99BBF><E588A0>𡒊垢雿輻鍂<E8BCBB>嗡<EFBFBD>蝡臬藁嚗屸<E59A97>閬<EFBFBD>耨<EFBFBD>?
|
||
```
|
||
|
||
### <20>?**撣貉<E692A3><E8B289>躰秤**
|
||
|
||
| <20>躰秤<E8BAB0>滨蔭 | 甇<>&<EFBFBD>滨蔭 | 霂湔<E99C82> |
|
||
|---------|---------|------|
|
||
| `http://172.17.0.15` | `172.17.0.15` | 銝滩<E98A9D><E6BBA9>惩<EFBFBD>霈桀<E99C88>蝻<EFBFBD> |
|
||
| `172.17.0.15:3001` | `172.17.0.15` | 銝滩<E98A9D><E6BBA9><EFBFBD>鉄蝡臬藁嚗<E89781>垢<EFBFBD><E59EA2><EFBFBD><EFBFBD>祇<EFBFBD>蝵殷<E89DB5> |
|
||
| `backend-service` | `172.17.0.15` | 敹<>◆雿輻鍂IP嚗䔶<E59A97>閬<EFBFBD>鍂銝餅㦤<E9A485>?|
|
||
| `localhost` | `172.17.0.15` | 銝滩<E98A9D><E6BBA9>甸ocalhost |
|
||
| 銝漤<E98A9D>蝵?| `172.17.0.15` | 敹<>◆<EFBFBD>滨蔭嚗<E894AD>炏<EFBFBD>坔鍳<E59D94>典仃韐?|
|
||
|
||
### <20>?**<2A>滨蔭撉諹<E69289>**
|
||
|
||
<EFBFBD>滨蔭摰峕<EFBFBD><EFBFBD>𠬍<EFBFBD><EFBFBD>孵稬<EFBFBD>鞾<EFBFBD>霂<EFBFBD><EFBFBD>𡢅<EFBFBD>蝖桐<EFBFBD>嚗?
|
||
- <20>?<3F>㗛<EFBFBD><E3979B>滨妍<E6BBA8>澆<EFBFBD>甇<EFBFBD>&嚗<EFBC86>躹<EFBFBD><E8BAB9>之撠誩<E692A0>嚗?
|
||
- <20>?<3F>㗛<EFBFBD><E3979B>潭聢撘𤩺迤蝖殷<E89D96>蝥涅P<E6B685>啣<EFBFBD>嚗?
|
||
- <20>?瘝⊥<E7989D>憭帋<E686AD><E5B88B><EFBFBD>征<EFBFBD>?
|
||
|
||
---
|
||
|
||
## 5. <20>滨蔭<E6BBA8>亙熒璉<E78692><E79289>?
|
||
|
||
### <20>蘂 **<2A>亙熒璉<E78692><E79289>仿<EFBFBD>蝵?*
|
||
|
||
```yaml
|
||
璉<EFBFBD><EFBFBD>交䲮撘? HTTP 霂瑟<E99C82>
|
||
|
||
璉<EFBFBD><EFBFBD>亥楝敺? /health
|
||
|
||
霂湔<E99C82>嚗?
|
||
- Nginx<6E>滨蔭銝凋<E98A9D><E5878B>冽<EFBFBD>靘𤤿<E99D98><F0A4A4BF>亙熒璉<E78692><E79289>亦垢<E4BAA6>?
|
||
- 餈𥪜<E9A488>蝥舀<E89DA5><E88880>?"healthy"
|
||
- 銝滢<E98A9D>韏硋<E99F8F>蝡舀<E89DA1><E88880>?
|
||
|
||
璉<EFBFBD><EFBFBD>亦垢<EFBFBD>? 80
|
||
霂湔<E99C82>嚗帋<E59A97>摰孵膥蝡臬藁銝<E89781><E98A9D>?
|
||
|
||
璉<EFBFBD><EFBFBD>亙<EFBFBD>霈? HTTP
|
||
霂湔<E99C82>嚗帋<E59A97><E5B88B>浹TTPS
|
||
|
||
頞<EFBFBD>𧒄<EFBFBD>園𡢿: 3蝘?
|
||
霂湔<E99C82>嚗𡁻<E59A97><F0A181BB><EFBFBD>垢<EFBFBD>對<EFBFBD>3蝘坿雲憭?
|
||
|
||
璉<EFBFBD><EFBFBD>仿𡢿<EFBFBD>? 10蝘?
|
||
霂湔<E99C82>嚗𡁏<E59A97>10蝘埝<E89D98><E59F9D>乩<EFBFBD>甈?
|
||
|
||
銝滚<EFBFBD>摨琿<EFBFBD><EFBFBD>? 3甈?
|
||
霂湔<E99C82>嚗朞<E59A97>蝏剖仃韐?甈∪<E79488><E288AA><EFBFBD>扇銝箔<E98A9D><E7AE94>亙熒
|
||
|
||
<EFBFBD>亙熒<EFBFBD><EFBFBD><EFBFBD>? 2甈?
|
||
霂湔<E99C82>嚗朞<E59A97>蝏剜<E89D8F><E5899C>?甈∪<E79488><E288AA><EFBFBD>扇銝箏<E98A9D>摨?
|
||
|
||
<EFBFBD>嘥<EFBFBD>撱嗉<EFBFBD>: 30蝘?
|
||
霂湔<E99C82>嚗?
|
||
- Nginx<6E>臬𢆡敺<F0A286A1>翰嚗?-10蝘𡜐<E89D98>
|
||
- 30蝘坿雲憭罸<E686AD><E7BDB8>𤩺<EFBFBD><F0A4A9BA>硋<EFBFBD>摰孵膥<E5ADB5>臬𢆡
|
||
```
|
||
|
||
### <20><> **<2A>亙熒璉<E78692><E79289>亙<EFBFBD><E4BA99>?*
|
||
|
||
```
|
||
SAE<EFBFBD>亙熒璉<EFBFBD><EFBFBD>亙膥
|
||
<20>?(瘥?0蝘?
|
||
curl http://摰孵膥IP:80/health
|
||
<20>?
|
||
Nginx憭<EFBFBD><EFBFBD> /health 霂瑟<E99C82>
|
||
<20>?
|
||
餈𥪜<EFBFBD>: HTTP 200 + "healthy"
|
||
<20>?
|
||
SAE<EFBFBD><EFBFBD>扇摰硺<EFBFBD>銝箏<EFBFBD>摨?<3F>?
|
||
```
|
||
|
||
**憒<><E68692><EFBFBD>亙熒璉<E78692><E79289>亙仃韐伐<E99F90>SAE隡𡄯<E99AA1>**
|
||
1. <20><>扇摰硺<E691B0>銝箔<E98A9D><E7AE94>亙熒
|
||
2. <20>𨀣迫<F0A880A3>𤏸砲摰硺<E691B0>頧砍<E9A0A7>瘚<EFBFBD><E7989A>
|
||
3. 餈䂿賒憭梯揖3甈∪<E79488>嚗屸<E59A97><E5B1B8>臬捆<E887AC>?
|
||
|
||
---
|
||
|
||
## 6. <20>滨蔭<E6BBA8>祉<EFBFBD>霈輸䔮
|
||
|
||
### <20><> **霈輸䔮<E8BCB8>孵<EFBFBD><E5ADB5>㗇𥋘**
|
||
|
||
#### **<2A>寞<EFBFBD>A嚗帋蝙<E5B88B>沒AE<41>𣂷<EFBFBD><F0A382B7><EFBFBD><EFBFBD>蝵穃𧑐<E7A983><F0A79190>嚗<EFBFBD>綫<EFBFBD>鞟鍂鈭擧<E988AD>霂𤏪<E99C82>**
|
||
|
||
```yaml
|
||
<EFBFBD>滨蔭<EFBFBD>孵<EFBFBD>:
|
||
1. <20>典<EFBFBD><E585B8>券<EFBFBD>蝵桅△<E6A185>X𪄳<EFBCB8>啜<EFBFBD>𣂼<EFBFBD><F0A382BC>刻挪<E588BB>桅<EFBFBD>蝵柴<E89DB5>?
|
||
2. 撘<><E69298>胯<EFBFBD>𣂼<EFBFBD>蝵𤏸挪<F0A48FB8>柴<EFBFBD>?
|
||
3. SAE<41>芸𢆡<E88AB8><F0A286A1><EFBFBD><EFBFBD>笔<EFBFBD>
|
||
|
||
<EFBFBD>瑕<EFBFBD><EFBFBD><EFBFBD>挪<EFBFBD>桀𧑐<EFBFBD><EFBFBD>:
|
||
<20>澆<EFBFBD>: frontend-nginx-service-xxxxx.cn-beijing.sae.aliyuncs.com
|
||
<20>讛悅: HTTPS嚗𠄎AE<41>芸𢆡<E88AB8>滨蔭霂<E894AD>髡嚗?
|
||
|
||
隡条<EFBFBD>:
|
||
- <20>?<3F>滩晶
|
||
- <20>?<3F>芸𢆡HTTPS
|
||
- <20>?蝡见朖<E8A781>舐鍂
|
||
|
||
蝻箇<EFBFBD>:
|
||
- <20>?<3F>笔<EFBFBD><E7AC94>曇扇
|
||
- <20>?<3F>䭾<EFBFBD><E4ADBE>芸<EFBFBD>銋匧<E98A8B><E58CA7>?
|
||
- <20>?霂<>髡<EFBFBD>特AE<41><45><EFBFBD>銝齿糓雿删<E99BBF><E588A0>笔<EFBFBD>
|
||
```
|
||
|
||
#### **<2A>寞<EFBFBD>B嚗𡁶<E59A97>摰朞䌊摰帋<E691B0><E5B88B>笔<EFBFBD>嚗<EFBFBD>綫<EFBFBD>鞟鍂鈭𡒊<E988AD>鈭改<E988AD>**
|
||
|
||
```yaml
|
||
<EFBFBD>滨蔭<EFBFBD>∩辣:
|
||
- 撌脫<E6928C><E884AB>芸楛<E88AB8><E6A59B><EFBFBD><EFBFBD>㵪<EFBFBD>憒?app.yizheng.ai嚗?
|
||
- <20>笔<EFBFBD>撌脣<E6928C>獢<EFBFBD><E78DA2>憒<EFBFBD><E68692><EFBFBD>滚𦛚<E6BB9A>典銁銝剖𤙴憭折<E686AD>嚗?
|
||
- <20>农SL霂<4C>髡嚗<E9ABA1>虾隞乩蝙<E4B9A9>典<EFBFBD>韐寧<E99F90>Let's Encrypt嚗?
|
||
|
||
<EFBFBD>滨蔭甇仿炊:
|
||
1. <20>典<EFBFBD><E585B8>齿<EFBFBD><E9BDBF>∪<EFBFBD>瘛餃<E7989B>CNAME閫<45><E996AB>
|
||
app.yizheng.ai <20>?frontend-nginx-service-xxxxx.cn-beijing.sae.aliyuncs.com
|
||
|
||
2. <20>沒AE<41>批<EFBFBD><E689B9>啁<EFBFBD>摰𡁜<E691B0><F0A1819C>?
|
||
<20>𣂼<EFBFBD><F0A382BC>刻挪<E588BB>桅<EFBFBD>蝵柴<E89DB5>爗<EFBFBD><E78897>鞱䌊摰帋<E691B0><E5B88B>笔<EFBFBD><E7AC94>爗<EFBFBD><E78897>鞉溶<E99E89>惩<EFBFBD><E683A9>溻<EFBFBD>?
|
||
|
||
3. 銝𠹺<E98A9D>SSL霂<4C>髡
|
||
<20>𣂼<EFBFBD><F0A382BC>刻挪<E588BB>桅<EFBFBD>蝵柴<E89DB5>爗<EFBFBD><E78897>躭TTPS霈曄蔭<E69B84>爗<EFBFBD><E78897>𣂷<EFBFBD>隡㰘<E99AA1>銋艾<E98A8B>?
|
||
|
||
4. <20>舐鍂撘箏<E69298>HTTPS
|
||
撘<><E69298>胯<EFBFBD>𣂼撩<F0A382BC>象TTPS頝唾蓮<E594BE>?
|
||
|
||
<EFBFBD>瑕<EFBFBD><EFBFBD><EFBFBD>挪<EFBFBD>桀𧑐<EFBFBD><EFBFBD>:
|
||
https://app.yizheng.ai
|
||
|
||
隡条<EFBFBD>:
|
||
- <20>?<3F><><EFBFBD><EFBFBD>笔<EFBFBD>
|
||
- <20>?<3F>冽<EFBFBD>靽∩遙摨阡<E691A8>
|
||
- <20>?SEO<45>见末
|
||
|
||
蝻箇<EFBFBD>:
|
||
- <20>𩤃<EFBFBD> <20><>閬<EFBFBD><E996AC><EFBFBD>滚<EFBFBD>霂<EFBFBD>髡
|
||
- <20>𩤃<EFBFBD> <20><>閬<EFBFBD>CP憭<50><E686AD>嚗<EFBFBD><E59A97><EFBFBD>𨅯銁銝剖𤙴嚗?
|
||
```
|
||
|
||
### <20><> **HTTPS<50>滨蔭嚗<E894AD><E59A97>鈭抒㴓憓<E3B493><E68693>憿鳴<E686BF>**
|
||
|
||
憒<EFBFBD><EFBFBD>雿輻鍂<EFBFBD>寞<EFBFBD>B嚗<EFBFBD>䌊摰帋<EFBFBD><EFBFBD>笔<EFBFBD>嚗㚁<EFBFBD>撘箇<EFBFBD>撱箄悅<EFBFBD>滨蔭HTTPS嚗?
|
||
|
||
```yaml
|
||
霂<EFBFBD>髡<EFBFBD>交<EFBFBD><EFBFBD>㗇𥋘:
|
||
|
||
<20>寞<EFBFBD>1: 雿輻鍂<E8BCBB>滩晶<E6BBA9><E699B6>et's Encrypt霂<74>髡
|
||
- <20>輸<EFBFBD>鈭騌SL霂<4C>髡<EFBFBD>滚𦛚<E6BB9A>臭誑<E887AD>唾窈<E594BE>滩晶霂<E699B6>髡
|
||
- <20>㗇<EFBFBD><E39787>?銝芣<E98A9D>嚗屸<E59A97>閬<EFBFBD><E996AC><EFBFBD><EFBFBD>凒<EFBFBD>?
|
||
|
||
<20>寞<EFBFBD>2: 韐凋僭<E5878B><E583AD><EFBFBD>霂<EFBFBD>髡
|
||
- <20>㗇<EFBFBD><E39787>?撟?
|
||
- <20><><EFBFBD>靽∩遙摨行凒擃?
|
||
- <20>舀<EFBFBD><E88880>游<EFBFBD><E6B8B8>寞<EFBFBD>?
|
||
|
||
霂<EFBFBD>髡<EFBFBD>滨蔭:
|
||
1. <20><><EFBFBD>霂<EFBFBD>髡<EFBFBD><E9ABA1>辣
|
||
- 霂<>髡<EFBFBD><E9ABA1>辣嚗飱omain.crt <20>?domain.pem
|
||
- 蝘<>𤨎<EFBFBD><F0A4A88E>辣嚗飱omain.key
|
||
|
||
2. <20>沒AE銝𠹺<E98A9D>霂<EFBFBD>髡
|
||
<20>𣂼<EFBFBD><F0A382BC>刻挪<E588BB>桅<EFBFBD>蝵柴<E89DB5>爗<EFBFBD><E78897>躭TTPS霈曄蔭<E69B84>爗<EFBFBD><E78897>𣂷<EFBFBD>隡㰘<E99AA1>銋艾<E98A8B>?
|
||
|
||
3. <20>舐鍂撘箏<E69298>HTTPS
|
||
撘<><E69298>胯<EFBFBD>躭TTP<54>芸𢆡頝唾蓮HTTPS<50>?
|
||
```
|
||
|
||
---
|
||
|
||
## 7. <20>函蔡摨𠉛鍂
|
||
|
||
### <20><> **<2A>扯<EFBFBD><E689AF>函蔡**
|
||
|
||
蝖株恕<EFBFBD><EFBFBD><EFBFBD>厰<EFBFBD>蝵格<EFBFBD>霂臬<EFBFBD>嚗?
|
||
|
||
1. <20>𧼮<EFBFBD>摨𠉛鍂<F0A0899B>滨蔭憿菟𢒰憿園<E686BF>
|
||
2. <20>孵稬<E5ADB5>鞾<EFBFBD>蝵脯<E89DB5>烐<EFBFBD><E78390>?
|
||
3. 蝖株恕<E6A0AA>函蔡靽⊥<E99DBD>
|
||
4. <20>孵稬<E5ADB5>鞟&摰𠾼<E691B0>?
|
||
|
||
### <20>梧<EFBFBD> **<2A>函蔡餈<E894A1><E9A488>嚗<EFBFBD>漲2-3<><33><EFBFBD>嚗?*
|
||
|
||
```
|
||
1. <20>𨅯<EFBFBD><F0A885AF>匧<EFBFBD><E58CA7>嗆挾 (30-60蝘?
|
||
<20>鎿<EFBFBD> SAE餈墧𦻖<E5A2A7>蚊CR
|
||
<20>鎿<EFBFBD> 撉諹<E69289><E8ABB9>𨅯<EFBFBD>摮睃銁
|
||
<20>鎿<EFBFBD> 銝贝蝸<E8B49D>𨅯<EFBFBD>撅<EFBFBD><E69285>91.9MB嚗?
|
||
<20>婙<EFBFBD> 閫<><E996AB><EFBFBD>𨅯<EFBFBD>
|
||
|
||
2. 摰孵膥<E5ADB5>臬𢆡<E887AC>嗆挾 (10-20蝘?
|
||
<20>鎿<EFBFBD> <20>𥕦遣摰孵膥
|
||
<20>鎿<EFBFBD> 瘜典<E7989C><E585B8>臬<EFBFBD><E887AC>㗛<EFBFBD>
|
||
<20>鎿<EFBFBD> <20>扯<EFBFBD>docker-entrypoint.sh
|
||
<20>鎿<EFBFBD> envsubst<73>踵揢nginx.conf
|
||
<20>鎿<EFBFBD> 撉諹<E69289>Nginx<6E>滨蔭
|
||
<20>婙<EFBFBD> <20>臬𢆡Nginx餈𤤿<E9A488>
|
||
|
||
3. <20>亙熒璉<E78692><E79289>仿𧫴畾?(30-60蝘?
|
||
<20>鎿<EFBFBD> 蝑匧<E89D91>30蝘𡜐<E89D98><F0A19C90>嘥<EFBFBD>撱嗉<E692B1>嚗?
|
||
<20>鎿<EFBFBD> 蝚?甈⊥<E79488><E28AA5>?/health
|
||
<20>鎿<EFBFBD> 蝚?甈⊥<E79488><E28AA5>?/health嚗?0蝘鍦<E89D98>嚗?
|
||
<20>婙<EFBFBD> <20><>扇銝箏<E98A9D>摨?<3F>?
|
||
|
||
4. 瘚<><E7989A><EFBFBD><EFBFBD>揢<EFBFBD>嗆挾 (5-10蝘?
|
||
<20>鎿<EFBFBD> 撠<>鰵摰硺<E691B0><E7A1BA>惩<EFBFBD>韐蠘蝸<E8A098><E89DB8>﹛
|
||
<20>鎿<EFBFBD> 隞舘<E99A9E>頧賢<E9A0A7>銵∠宏<E288A0>斗唂摰硺<E691B0>
|
||
<20>婙<EFBFBD> <20>函蔡摰峕<E691B0> <20>?
|
||
```
|
||
|
||
### <20><> **<2A>函蔡<E587BD>嗆<EFBFBD><E59786><EFBFBD><EFBFBD>?*
|
||
|
||
<EFBFBD>函蔡餈<EFBFBD><EFBFBD>銝剖虾隞亙<EFBFBD><EFBFBD>嗆䰻<EFBFBD>页<EFBFBD>
|
||
|
||
```yaml
|
||
<EFBFBD>亦<EFBFBD><EFBFBD>孵<EFBFBD>:
|
||
<20>𣂼<EFBFBD><F0A382BC>刻祕<E588BB><E7A595><EFBFBD>爗<EFBFBD><E78897>𣂼<EFBFBD>靘见<E99D98>銵具<E98AB5>爗<EFBFBD><E78897>鞉䰻<E99E89>见<EFBFBD>靘讠𠶖<E8AEA0><F0A0B696><EFBFBD>?
|
||
|
||
<EFBFBD>嗆<EFBFBD><EFBFBD>秩<EFBFBD>?
|
||
- <20>𥕦遣銝? 甇<>銁<EFBFBD>匧<EFBFBD><E58CA7>𨅯<EFBFBD>
|
||
- <20>臬𢆡銝? 甇<>銁<EFBFBD>臬𢆡摰孵膥
|
||
- 餈鞱<E9A488>銝? 摰孵膥撌脣鍳<E884A3>剁<EFBFBD>蝑匧<E89D91><E58CA7>亙熒璉<E78692><E79289>?
|
||
- <20>亙熒: <20>亙熒璉<E78692><E79289>仿<EFBFBD>朞<EFBFBD>嚗<EFBFBD>虾隞交𦻖<E4BAA4>嗆<EFBFBD><E59786>?<3F>?
|
||
- 銝滚<E98A9D>摨? <20>亙熒璉<E78692><E79289>亙仃韐?<3F>?
|
||
- <20>𨀣迫: 摰硺<E691B0>撌脣<E6928C>甇?
|
||
```
|
||
|
||
### <20>?**<2A>函蔡憭梯揖撣貉<E692A3><E8B289>笔<EFBFBD>**
|
||
|
||
| 憭梯揖<E6A2AF>嗆挾 | <20>躰秤靽⊥<E99DBD> | 閫<><E996AB><EFBFBD>寞<EFBFBD> |
|
||
|---------|---------|---------|
|
||
| <20>𨅯<EFBFBD><F0A885AF>匧<EFBFBD> | `image not found` | 璉<><E79289>仿<EFBFBD><E4BBBF>誩𧑐<E8AAA9><F0A79190><EFBFBD>臬炏甇<E7828F>&嚗𣬚&霈支蝙<E694AF>?vpc<70>笔<EFBFBD> |
|
||
| <20>𨅯<EFBFBD><F0A885AF>匧<EFBFBD> | `unauthorized` | 璉<><E79289>丕CR霈輸䔮<E8BCB8><E494AE><EFBFBD>嚗𣬚&霈又AE<41>㗇<EFBFBD><E39787>𡝗<EFBFBD><F0A19D97>?|
|
||
| 摰孵膥<E5ADB5>臬𢆡 | `BACKEND_SERVICE_HOST required` | 璉<><E79289>亦㴓憓<E3B493><E68693><EFBFBD>𤩺糓<F0A4A9BA>阡<EFBFBD>蝵?|
|
||
| <20>亙熒璉<E78692><E79289>?| `connection refused` | 璉<><E79289>亙捆<E4BA99>函垢<E587BD><E59EA2><EFBFBD>蝵殷<E89DB5>摨磰砲<E7A3B0>?0嚗?|
|
||
| <20>亙熒璉<E78692><E79289>?| `404 not found` | 璉<><E79289>亙<EFBFBD>摨瑟<E691A8><E7919F>亥楝敺<E6A59D><E695BA>摨磰砲<E7A3B0>?health嚗?|
|
||
|
||
---
|
||
|
||
## 8. 撉諹<E69289><E8ABB9>函蔡
|
||
|
||
### <20>?**撉諹<E69289>皜<EFBFBD><E79A9C>**
|
||
|
||
<EFBFBD>函蔡<EFBFBD>𣂼<EFBFBD><EFBFBD>𠬍<EFBFBD><EFBFBD>劐誑銝𧢲郊撉日<EFBFBD>霂<EFBFBD><EFBFBD>
|
||
|
||
#### **甇仿炊1嚗𡁏䰻<F0A1818F>见<EFBFBD>靘讠𠶖<E8AEA0>?*
|
||
|
||
```bash
|
||
雿滨蔭: <20>𣂼<EFBFBD><F0A382BC>刻祕<E588BB><E7A595><EFBFBD>爗<EFBFBD><E78897>𣂼<EFBFBD>靘见<E99D98>銵具<E98AB5>?
|
||
|
||
璉<EFBFBD><EFBFBD>仿★:
|
||
<20>𡢅<EFBFBD> 摰硺<E691B0><E7A1BA>圈<EFBFBD>: 2銝芸<E98A9D>靘?
|
||
<20>𡢅<EFBFBD> 摰硺<E691B0><E7A1BA>嗆<EFBFBD>? <20>券<EFBFBD><E588B8>曄內"<22>亙熒"
|
||
<20>𡢅<EFBFBD> <20>亙熒璉<E78692><E79289>? <20>券<EFBFBD><E588B8>朞<EFBFBD>
|
||
```
|
||
|
||
#### **甇仿炊2嚗𡁏䰻<F0A1818F>见鍳<E8A781>冽𠯫敹?*
|
||
|
||
```bash
|
||
雿滨蔭: <20>𣂼<EFBFBD><F0A382BC>刻祕<E588BB><E7A595><EFBFBD>爗<EFBFBD><E78897>鞉𠯫敹𨰜<E695B9>爗<EFBFBD><E78897>𣂼<EFBFBD><F0A382BC>嗆𠯫敹𨰜<E695B9>?
|
||
|
||
摨磰砲<EFBFBD>见<EFBFBD>:
|
||
============================================
|
||
Starting Frontend Nginx Service
|
||
Backend Service: 172.17.0.15:3001
|
||
Container Timezone: Asia/Shanghai
|
||
Current Time: Tue Dec 23 21:07:35 CST 2025
|
||
============================================
|
||
nginx: configuration file /etc/nginx/nginx.conf test is successful
|
||
|
||
<EFBFBD>?憒<><E68692><EFBFBD>见<EFBFBD>隞乩<E99A9E><E4B9A9>亙<EFBFBD>嚗諹秩<E8ABB9>𡡞<EFBFBD>蝵格迤蝖?
|
||
<EFBFBD>?憒<><E68692><EFBFBD>见<EFBFBD> "BACKEND_SERVICE_HOST required"嚗諹秩<E8ABB9>𡒊㴓憓<E3B493><E68693><EFBFBD>𤩺𧊋<F0A4A9BA>滨蔭
|
||
```
|
||
|
||
#### **甇仿炊3嚗𡁏<E59A97>霂訫<E99C82>摨瑟<E691A8><E7919F>亦垢<E4BAA6>?*
|
||
|
||
```bash
|
||
# <20>瑕<EFBFBD><E79195>祉<EFBFBD>霈輸䔮<E8BCB8>啣<EFBFBD>
|
||
<EFBFBD>祉<EFBFBD><EFBFBD>啣<EFBFBD>: https://frontend-nginx-service-xxxxx.cn-beijing.sae.aliyuncs.com
|
||
|
||
# 瘚贝<E7989A><E8B49D>亙熒璉<E78692><E79289>伐<EFBFBD>雿輻鍂瘚讛<E7989A><E8AE9B>冽<EFBFBD>curl嚗?
|
||
霈輸䔮: https://frontend-nginx-service-xxxxx.cn-beijing.sae.aliyuncs.com/health
|
||
|
||
憸<EFBFBD><EFBFBD>餈𥪜<EFBFBD>:
|
||
Status: 200 OK
|
||
Content: healthy
|
||
|
||
<EFBFBD>?憒<><E68692>餈𥪜<E9A488> "healthy"嚗諹秩<E8ABB9>𤾸<EFBFBD>蝡舀<E89DA1><E88880>⊥迤撣?
|
||
```
|
||
|
||
#### **甇仿炊4嚗𡁏<E59A97>霂蓥蜓憿菔挪<E88F94>?*
|
||
|
||
```bash
|
||
# 霈輸䔮銝駁△
|
||
霈輸䔮: https://frontend-nginx-service-xxxxx.cn-beijing.sae.aliyuncs.com/
|
||
|
||
璉<EFBFBD><EFBFBD>仿★:
|
||
<20>𡢅<EFBFBD> 憿菟𢒰<E88F9F>賣迤撣詨<E692A3>頧踝<E9A0A7>銝齿糓蝛箇蒾憿蛛<E686BF>
|
||
<20>𡢅<EFBFBD> <20>见<EFBFBD>React摨𠉛鍂<F0A0899B>屸𢒰
|
||
<20>𡢅<EFBFBD> CSS<53>瑕<EFBFBD>甇<EFBFBD>&<EFBFBD>曄內
|
||
<20>𡢅<EFBFBD> JavaScript甇<74>虜<EFBFBD>扯<EFBFBD>
|
||
```
|
||
|
||
#### **甇仿炊5嚗𡁏<E59A97>霂笌PA頝舐眏**
|
||
|
||
```bash
|
||
# 霈輸䔮銝<E494AE>銝芯<E98A9D>摮睃銁<E79D83><E98A81>楝敺<E6A59D><E695BA>瘚贝<E7989A>React Router嚗?
|
||
霈輸䔮: https://frontend-nginx-service-xxxxx.cn-beijing.sae.aliyuncs.com/dashboard
|
||
|
||
憸<EFBFBD><EFBFBD>銵䔶蛹:
|
||
<20>?銝齿𥁒404<30>躰秤
|
||
<20>?餈𥪜<E9A488>index.html
|
||
<20>?React Router<65>亦恣頝舐眏
|
||
<20>?<3F>曄內撖孵<E69296><E5ADB5><EFBFBD>△<EFBFBD>Y<EFBFBD>隞?
|
||
|
||
<EFBFBD>?憒<><E68692><EFBFBD>见<EFBFBD>Nginx 404憿菟𢒰嚗諹秩<E8ABB9>篺ginx.conf<6E>滨蔭<E6BBA8>厰䔮憸?
|
||
```
|
||
|
||
#### **甇仿炊6嚗𡁏<E59A97>霂𧭈PI隞<49><E99A9E>嚗<EFBFBD><E59A97><EFBFBD>殷<EFBFBD>**
|
||
|
||
```bash
|
||
# <20>枏<EFBFBD>瘚讛<E7989A><E8AE9B>典<EFBFBD><E585B8>𤏸<EFBFBD><F0A48FB8>極<EFBFBD>瘀<EFBFBD>F12嚗争<E59A97> Console<6C><65>倌
|
||
|
||
# <20>扯<EFBFBD>隞乩<E99A9E>隞<EFBFBD><E99A9E>瘚贝<E7989A>API隞<49><E99A9E>
|
||
fetch('/api/v1/health')
|
||
.then(res => res.json())
|
||
.then(data => console.log(data))
|
||
|
||
憸<EFBFBD><EFBFBD>蝏𤘪<EFBFBD>:
|
||
<20>?霂瑟<E99C82><E7919F>𣂼<EFBFBD>嚗𠄎tatus 200嚗?
|
||
<20>?餈𥪜<E9A488><F0A5AA9C>𡒊垢<F0A1928A><E59EA2><EFBFBD>摨娍㺭<E5A88D>?
|
||
<20>?瘝⊥<E7989D>CORS<52>躰秤
|
||
|
||
<EFBFBD>?憒<><E68692><EFBFBD>见<EFBFBD>CORS<52>躰秤嚗諹秩<E8ABB9>𤾸<EFBFBD><F0A4BEB8>睲誨<E79DB2><E8AAA8><EFBFBD>蝵格<E89DB5><E6A0BC>桅<EFBFBD>
|
||
<EFBFBD>?憒<><E68692><EFBFBD>见<EFBFBD>餈墧𦻖憭梯揖嚗諹秩<E8ABB9>𤾸<EFBFBD>蝡臬𧑐<E887AC><F0A79190><EFBFBD>滨蔭<E6BBA8>躰秤
|
||
```
|
||
|
||
#### **甇仿炊7嚗𡁏<E59A97>霂閖<E99C82><E99696><EFBFBD><EFBFBD>皞鞟<E79A9E>摮?*
|
||
|
||
```bash
|
||
# <20>冽<EFBFBD>閫<EFBFBD>膥撘<E886A5><E69298>𤏸<EFBFBD><F0A48FB8>極<EFBFBD>?<3F>?Network<72><6B>倌
|
||
|
||
# 蝚砌<E89D9A>甈∟挪<E2889F>?
|
||
<20>?index.html: <20>嗆<EFBFBD>?00嚗龦ache-Control: no-cache
|
||
<20>?index-xxxxx.js: <20>嗆<EFBFBD>?00嚗龦ache-Control: 1撟?
|
||
|
||
# <20>瑟鰵憿菟𢒰嚗<F0A292B0>洵鈭峕活霈輸䔮嚗?
|
||
<20>?index.html: <20>嗆<EFBFBD>?00嚗<30><E59A97>甈⊿<E79488><E28ABF>齿鰵<E9BDBF>瑕<EFBFBD>嚗?
|
||
<20>?index-xxxxx.js: <20>嗆<EFBFBD>?00 (from disk cache)嚗<>蝙<EFBFBD>函<EFBFBD>摮矋<E691AE>
|
||
```
|
||
|
||
#### **甇仿炊8嚗𡁏<E59A97>霂柖zip<69>讠憬**
|
||
|
||
```bash
|
||
# <20>冽<EFBFBD>閫<EFBFBD>膥撘<E886A5><E69298>𤏸<EFBFBD><F0A48FB8>極<EFBFBD>?<3F>?Network<72><6B>倌
|
||
# <20>孵稬隞餅<E99A9E>JS<4A><53>辣
|
||
|
||
璉<EFBFBD><EFBFBD>充esponse Headers:
|
||
<20>?Content-Encoding: gzip
|
||
<20>?<3F><>辣憭批<E686AD><E689B9>誩<EFBFBD>60-70%
|
||
|
||
蝷箔<EFBFBD>:
|
||
<20>笔<EFBFBD>憭批<E686AD>: 1.2 MB
|
||
隡㰘<E99AA1>憭批<E686AD>: 350 KB (gzip<69>讠憬<E8AEA0>?
|
||
```
|
||
|
||
### <20><> **<2A>函蔡<E587BD>𣂼<EFBFBD><F0A382BC><EFBFBD><EFBFBD>**
|
||
|
||
憒<EFBFBD><EFBFBD>隞乩<EFBFBD>8銝芣郊撉文<EFBFBD><EFBFBD>券<EFBFBD>朞<EFBFBD>嚗峕<EFBFBD><EFBFBD>頣<EFBFBD><EFBFBD>滨垢<EFBFBD>滚𦛚<EFBFBD>函蔡<EFBFBD>𣂼<EFBFBD>嚗?
|
||
|
||
---
|
||
|
||
## 9. 撣貉<E692A3><E8B289>桅<EFBFBD><E6A185>埝䰻
|
||
|
||
### <20>?**<2A>桅<EFBFBD>1嚗𡁜<E59A97>靘见<E99D98>摨瑟<E691A8><E7919F>亙仃韐?*
|
||
|
||
**<2A><>𠶖嚗?*
|
||
```
|
||
摰硺<EFBFBD><EFBFBD>嗆<EFBFBD><EFBFBD>遬蝷?銝滚<E98A9D>摨?
|
||
<EFBFBD>亙熒璉<EFBFBD><EFBFBD>亙仃韐?
|
||
```
|
||
|
||
**<2A>埝䰻甇仿炊嚗?*
|
||
|
||
```bash
|
||
1. <20>亦<EFBFBD>摰硺<E691B0><E7A1BA>亙<EFBFBD>
|
||
<20>𣂼<EFBFBD><F0A382BC>刻祕<E588BB><E7A595><EFBFBD>爗<EFBFBD><E78897>鞉𠯫敹𨰜<E695B9>爗<EFBFBD><E78897>𣂼<EFBFBD><F0A382BC>嗆𠯫敹𨰜<E695B9>爗<EFBFBD><E78897>鞾<EFBFBD>㗇𥋘摰硺<E691B0><E7A1BA>?
|
||
|
||
憒<><E68692><EFBFBD>见<EFBFBD>:
|
||
- "BACKEND_SERVICE_HOST required" <20>?<3F>臬<EFBFBD><E887AC>㗛<EFBFBD><E3979B>芷<EFBFBD>蝵?
|
||
- "nginx: configuration file test failed" <20>?nginx.conf霂剜<E99C82><E5899C>躰秤
|
||
- 瘝⊥<E7989D><E28AA5>亙<EFBFBD> <20>?摰孵膥瘝⊥<E7989D><E28AA5>臬𢆡
|
||
|
||
2. 璉<><E79289>亙<EFBFBD>摨瑟<E691A8><E7919F>仿<EFBFBD>蝵?
|
||
<20>𣂼<EFBFBD><F0A382BC>券<EFBFBD>蝵柴<E89DB5>爗<EFBFBD><E78897>𣂼<EFBFBD>摨瑟<E691A8><E7919F>乓<EFBFBD>?
|
||
|
||
蝖株恕:
|
||
- 璉<><E79289>亥楝敺? /health嚗<68><E59A97><EFBFBD>?/嚗?
|
||
- 璉<><E79289>亦垢<E4BAA6>? 80嚗<30><E59A97><EFBFBD>?000<30>硋<EFBFBD>隞吔<E99A9E>
|
||
- 璉<><E79289>亙<EFBFBD>霈? HTTP嚗<50><E59A97><EFBFBD>浹TTPS嚗?
|
||
|
||
3. <20>见𢆡瘚贝<E7989A><E8B49D>亙熒璉<E78692><E79289>?
|
||
<20>沒AE Webshell銝剜<E98A9D>銵?
|
||
curl http://localhost/health
|
||
|
||
憸<><E686B8>餈𥪜<E9A488>: healthy
|
||
```
|
||
|
||
**閫<><E996AB><EFBFBD>寞<EFBFBD>嚗?*
|
||
- <20>滨蔭蝻箏仃<E7AE8F><E4BB83>㴓憓<E3B493><E68693><EFBFBD>?
|
||
- 靽格迤<E6A0BC>亙熒璉<E78692><E79289>亥楝敺?
|
||
- 璉<><E79289>亙捆<E4BA99>函垢<E587BD><E59EA2><EFBFBD>蝵?
|
||
|
||
---
|
||
|
||
### <20>?**<2A>桅<EFBFBD>2嚗𡁻△<F0A181BB>Z<EFBFBD>霈輸䔮嚗䔶<E59A97>API霂瑟<E99C82>憭梯揖**
|
||
|
||
**<2A><>𠶖嚗?*
|
||
```
|
||
<EFBFBD>滨垢憿菟𢒰甇<EFBFBD>虜<EFBFBD>曄內
|
||
靚<EFBFBD>鍂API<EFBFBD>嗆𥁒<EFBFBD>? Network Error <20>?504 Gateway Timeout
|
||
```
|
||
|
||
**<2A>埝䰻甇仿炊嚗?*
|
||
|
||
```bash
|
||
1. 璉<><E79289>交<EFBFBD>閫<EFBFBD>膥Console
|
||
<20>见<EFBFBD><E8A781><EFBFBD><EFBFBD>霂?
|
||
- "ERR_CONNECTION_REFUSED" <20>?<3F>𡒊垢<F0A1928A>滚𦛚<E6BB9A>芸鍳<E88AB8>?
|
||
- "504 Gateway Timeout" <20>?<3F>𡒊垢<F0A1928A>滚<EFBFBD>頞<EFBFBD>𧒄
|
||
- "502 Bad Gateway" <20>?<3F>𡒊垢<F0A1928A>啣<EFBFBD><E595A3>躰秤
|
||
|
||
2. 璉<><E79289>亦㴓憓<E3B493><E68693><EFBFBD>誯<EFBFBD>蝵?
|
||
<20>𣂼<EFBFBD><F0A382BC>券<EFBFBD>蝵柴<E89DB5>爗<EFBFBD><E78897>鞟㴓憓<E3B493><E68693><EFBFBD>譌<EFBFBD>?
|
||
|
||
撉諹<E69289>:
|
||
- BACKEND_SERVICE_HOST <20>臬炏<E887AC>滨蔭
|
||
- IP<49>啣<EFBFBD><E595A3>臬炏甇<E7828F>&嚗<EFBC86><E59A97><EFBFBD>𡒊垢SAE摨𠉛鍂<F0A0899B>瑕<EFBFBD>嚗?
|
||
- 銝滩<E98A9D><E6BBA9>柾ttp://<2F>滨<EFBFBD>
|
||
- 銝滩<E98A9D><E6BBA9><EFBFBD>鉄蝡臬藁<E887AC>?
|
||
|
||
3. 瘚贝<E7989A><E8B49D>𡒊垢<F0A1928A>滚𦛚<E6BB9A>航噢<E888AA>?
|
||
<20>典<EFBFBD>蝡臬捆<E887AC>函<EFBFBD>Webshell銝?
|
||
curl http://172.17.0.15:3001/api/v1/health
|
||
|
||
憒<><E68692>憭梯揖:
|
||
- 璉<><E79289>亙<EFBFBD>蝡舀<E89DA1><E88880>⊥糓<E28AA5>西<EFBFBD>銵?
|
||
- 璉<><E79289>冬PC蝵𤑳<E89DB5><F0A491B3>臬炏<E887AC>詨<EFBFBD>
|
||
- 璉<><E79289>亙<EFBFBD><E4BA99>函<EFBFBD>閫<EFBFBD><E996AB>
|
||
|
||
4. <20>亦<EFBFBD>Nginx<6E>躰秤<E8BAB0>亙<EFBFBD>
|
||
docker logs <container_id> 2>&1 | grep error
|
||
|
||
撣貉<E692A3><E8B289>躰秤:
|
||
- "upstream: "http://172.17.0.15:3001/..." <20>?<3F>𡒊垢<F0A1928A>啣<EFBFBD>甇<EFBFBD>&
|
||
- "connect() failed" <20>?<3F>𡒊垢銝滚虾颲?
|
||
```
|
||
|
||
**閫<><E996AB><EFBFBD>寞<EFBFBD>嚗?*
|
||
- 靽格迤<E6A0BC>臬<EFBFBD><E887AC>㗛<EFBFBD>BACKEND_SERVICE_HOST
|
||
- 蝖桐<E89D96><E6A190>滚<EFBFBD>蝡臬銁<E887AC>䔶<EFBFBD>VPC
|
||
- 璉<><E79289>亙<EFBFBD><E4BA99>函<EFBFBD>閫<EFBFBD><E996AB><EFBFBD><EFBFBD>捂VPC<50><43><EFBFBD>霈輸䔮
|
||
- <20>滚鍳<E6BB9A>滨垢摨𠉛鍂雿輸<E99BBF>蝵桃<E89DB5><E6A183>?
|
||
|
||
---
|
||
|
||
### <20>?**<2A>桅<EFBFBD>3嚗𡁜<E59A97><F0A1819C>圈△<E59C88>X𥁒404**
|
||
|
||
**<2A><>𠶖嚗?*
|
||
```
|
||
霈輸䔮銝駁△甇<EFBFBD>虜
|
||
<EFBFBD>孵稬<EFBFBD>暹𦻖頝唾蓮甇<EFBFBD>虜
|
||
<EFBFBD>瑟鰵憿菟𢒰嚗㇅5嚗争<EFBFBD> 404 Not Found
|
||
```
|
||
|
||
**<2A>笔<EFBFBD>嚗?*
|
||
|
||
React Router雿輻鍂瘚讛<E7989A><E8AE9B>刻楝<E588BB>梧<EFBFBD>BrowserRouter嚗㚁<E59A97><E39A81>瑟鰵<E7919F>賁ginx<6E><78>閬<EFBFBD><E996AC><EFBFBD><EFBFBD><EFBFBD>㕑楝<E39591>勗<EFBFBD><E58B97><EFBFBD><EFBFBD>迺ndex.html<6D>?
|
||
|
||
**<2A>埝䰻甇仿炊嚗?*
|
||
|
||
```bash
|
||
1. 霈輸䔮銝<E494AE>銝析eact頝舐眏
|
||
靘见<E99D98>: https://your-domain.com/dashboard
|
||
|
||
2. <20>丽5<E4B8BD>瑟鰵憿菟𢒰
|
||
|
||
<20>?<3F>躰秤<E8BAB0>啗情: <20>见<EFBFBD>Nginx 404憿菟𢒰
|
||
<20>?甇<>&<EFBFBD>啗情: 憿菟𢒰甇<F0A292B0>虜<EFBFBD>曄內
|
||
|
||
3. 璉<><E79289>叩ginx.conf<6E>滨蔭
|
||
<20>餃<EFBFBD>摰孵膥Webshell:
|
||
cat /etc/nginx/nginx.conf | grep "try_files"
|
||
|
||
摨磰砲<E7A3B0>见<EFBFBD>:
|
||
try_files $uri $uri/ /index.html;
|
||
```
|
||
|
||
**閫<><E996AB><EFBFBD>寞<EFBFBD>嚗?*
|
||
|
||
憒<EFBFBD><EFBFBD>nginx.conf銝剜瓷<E5899C>头try_files`<EFBFBD>滨蔭嚗屸<EFBFBD>閬<EFBFBD><EFBFBD><EFBFBD>唳<EFBFBD>撱粹<EFBFBD><EFBFBD>𧶏<EFBFBD>
|
||
|
||
```nginx
|
||
# <20>盯ginx.conf銝剔&靽脲<E99DBD>隞乩<E99A9E><E4B9A9>滨蔭
|
||
location / {
|
||
try_files $uri $uri/ /index.html;
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
### <20>?**<2A>桅<EFBFBD>4嚗𡁻<E59A97><F0A181BB><EFBFBD><EFBFBD>皞?04**
|
||
|
||
**<EFBFBD><EFBFBD>𠶖嚗?*
|
||
```
|
||
HTML<EFBFBD>賢<EFBFBD>頧?
|
||
JS/CSS<53><53>辣404 Not Found
|
||
憿菟𢒰<EFBFBD>曄內銝箇滲<EFBFBD><EFBFBD>𧋦嚗<EFBFBD><EFBFBD><EFBFBD>瑕<EFBFBD>嚗?
|
||
```
|
||
|
||
**<EFBFBD>埝䰻甇仿炊嚗?*
|
||
|
||
```bash
|
||
1. 璉<><E79289>交<EFBFBD>閫<EFBFBD>膥Network<72><6B>倌
|
||
<20>见<EFBFBD>:
|
||
GET https://your-domain.com/assets/index-xxxxx.js 404
|
||
|
||
2. 璉<><E79289>可ndex.html銝剔<E98A9D>韏<EFBFBD><E99F8F>頝臬<E9A09D>
|
||
curl https://your-domain.com/ | grep assets
|
||
|
||
甇<>&蝷箔<E89DB7>:
|
||
<script src="/assets/index-xxxxx.js"></script>
|
||
|
||
<20>躰秤蝷箔<E89DB7>:
|
||
<script src="./assets/index-xxxxx.js"></script> # <20>詨笆頝臬<E9A09D>
|
||
<script src="/app/assets/index-xxxxx.js"></script> # <20>躰秤base
|
||
|
||
3. 璉<><E79289>冬ite<74>滨蔭
|
||
<20>亦<EFBFBD>frontend-v2/vite.config.ts:
|
||
|
||
甇<>&<EFBFBD>滨蔭:
|
||
export default defineConfig({
|
||
base: '/', // <20>?暺䁅恕<E48185>?
|
||
})
|
||
|
||
<20>躰秤<E8BAB0>滨蔭:
|
||
export default defineConfig({
|
||
base: '/app/', // <20>?<3F>日<EFBFBD>蝖桀<E89D96><E6A180><EFBFBD>閬?
|
||
})
|
||
```
|
||
|
||
**閫<><E996AB><EFBFBD>寞<EFBFBD>嚗?*
|
||
|
||
1. 靽格㺿 `vite.config.ts`嚗𣬚&靽?`base: '/'`
|
||
2. <20>齿鰵<E9BDBF><E9B0B5>遣<EFBFBD>滨垢嚗䫤npm run build`
|
||
3. <20>齿鰵<E9BDBF><E9B0B5>遣Docker<65>𨅯<EFBFBD>
|
||
4. <20>券<EFBFBD><E588B8><EFBFBD>ACR
|
||
5. SAE<41>齿鰵<E9BDBF>函蔡
|
||
|
||
---
|
||
|
||
### <20>?**<2A>桅<EFBFBD>5嚗𡁶㴓憓<E3B493><E68693><EFBFBD>𤩺𧊋<F0A4A9BA><F0A78A8B><EFBFBD>**
|
||
|
||
**<EFBFBD><EFBFBD>𠶖嚗?*
|
||
```
|
||
<EFBFBD>滨蔭鈭<EFBFBD>㴓憓<EFBFBD><EFBFBD><EFBFBD>?
|
||
雿<EFBFBD>捆<EFBFBD>典鍳<EFBFBD>冽𠯫敹埈遬蝷箏<EFBFBD><EFBFBD>譍蛹蝛?
|
||
```
|
||
|
||
**<EFBFBD>埝䰻甇仿炊嚗?*
|
||
|
||
```bash
|
||
1. <20>亦<EFBFBD>摰孵膥<E5ADB5>臬𢆡<E887AC>亙<EFBFBD>
|
||
<20>𣂼<EFBFBD><F0A382BC>刻祕<E588BB><E7A595><EFBFBD>爗<EFBFBD><E78897>鞉𠯫敹𨰜<E695B9>爗<EFBFBD><E78897>𣂼<EFBFBD><F0A382BC>嗆𠯫敹𨰜<E695B9>?
|
||
|
||
<20>见<EFBFBD>:
|
||
Backend Service: ${BACKEND_SERVICE_HOST}:${BACKEND_SERVICE_PORT}
|
||
|
||
<20>?餈躰秩<E8BAB0>𦱿nvsubst瘝⊥<E7989D><E28AA5>踵揢<E8B8B5>㗛<EFBFBD>
|
||
|
||
2. 餈𥕦<E9A488>摰孵膥Webshell璉<6C><E79289>?
|
||
echo $BACKEND_SERVICE_HOST
|
||
|
||
憒<><E68692>銝箇征 <20>?SAE<41>臬<EFBFBD><E887AC>㗛<EFBFBD><E3979B>芯<EFBFBD><E88AAF>?
|
||
憒<><E68692><EFBFBD>匧<EFBFBD>?<3F>?envsubst<73>扯<EFBFBD>憭梯揖
|
||
|
||
3. 璉<><E79289>卡ocker-entrypoint.sh
|
||
cat /docker-entrypoint.sh
|
||
|
||
蝖株恕<E6A0AA>?
|
||
envsubst '${BACKEND_SERVICE_HOST} ${BACKEND_SERVICE_PORT}' \
|
||
< /etc/nginx/templates/nginx.conf.template \
|
||
> /etc/nginx/nginx.conf
|
||
```
|
||
|
||
**閫<><E996AB><EFBFBD>寞<EFBFBD>嚗?*
|
||
|
||
1. <20>沒AE<41>批<EFBFBD><E689B9>圈<EFBFBD><E59C88>圈<EFBFBD>蝵桃㴓憓<E3B493><E68693><EFBFBD>?
|
||
2. 蝖桐<E89D96><E6A190>㗛<EFBFBD><E3979B>齿𣄽<E9BDBF>蹱迤蝖殷<E89D96><E6AEB7>箏<EFBFBD>憭批<E686AD><E689B9>辷<EFBFBD>
|
||
3. <20>滚鍳摨𠉛鍂雿輸<E99BBF>蝵桃<E89DB5><E6A183>?
|
||
|
||
---
|
||
|
||
## 10. <20>亙虜餈鞟輕
|
||
|
||
### <20><> **<2A>烐綉<E78390><E7B689><EFBFBD>**
|
||
|
||
#### **摰墧𧒄<E5A2A7>烐綉**
|
||
|
||
```yaml
|
||
<EFBFBD>亦<EFBFBD>雿滨蔭: <EFBFBD>𣂼<EFBFBD><EFBFBD>刻祕<EFBFBD><EFBFBD><EFBFBD>爗<EFBFBD><EFBFBD>鞟<EFBFBD><EFBFBD>扼<EFBFBD>?
|
||
|
||
<EFBFBD>喲睸<EFBFBD><EFBFBD><EFBFBD>:
|
||
CPU雿輻鍂<EFBFBD>?
|
||
<EFBFBD>亙熒<EFBFBD><EFBFBD>凒: < 30%
|
||
<EFBFBD>𡃏郎<EFBFBD><EFBFBD><EFBFBD>? > 60%
|
||
霂湔<EFBFBD>: Nginx<EFBFBD><EFBFBD><EFBFBD>頞<EFBFBD><EFBFBD>30%
|
||
|
||
<EFBFBD><EFBFBD><EFBFBD>雿輻鍂<EFBFBD>?
|
||
<EFBFBD>亙熒<EFBFBD><EFBFBD>凒: < 50%
|
||
<EFBFBD>𡃏郎<EFBFBD><EFBFBD><EFBFBD>? > 80%
|
||
霂湔<EFBFBD>: Nginx<EFBFBD><EFBFBD><EFBFBD><EFBFBD>删鍂敺<EFBFBD><EFBFBD>
|
||
|
||
霂瑟<EFBFBD>QPS:
|
||
閫<EFBFBD><EFBFBD>霈輸䔮<EFBFBD>讛<EFBFBD><EFBFBD>?
|
||
|
||
撟喳<EFBFBD><EFBFBD>滚<EFBFBD><EFBFBD>園𡢿:
|
||
<EFBFBD>亙熒<EFBFBD><EFBFBD>凒: < 50ms
|
||
<EFBFBD>𡃏郎<EFBFBD><EFBFBD><EFBFBD>? > 200ms
|
||
霂湔<EFBFBD>: <EFBFBD>蹱<EFBFBD><EFBFBD><EFBFBD>隞嗅<EFBFBD>摨娍<EFBFBD>敹?
|
||
|
||
<EFBFBD>躰秤<EFBFBD>?
|
||
<EFBFBD>亙熒<EFBFBD><EFBFBD>凒: < 0.1%
|
||
<EFBFBD>𡃏郎<EFBFBD><EFBFBD><EFBFBD>? > 1%
|
||
```
|
||
|
||
#### **<2A>亙<EFBFBD><E4BA99>亦<EFBFBD>**
|
||
|
||
```yaml
|
||
摰墧𧒄<EFBFBD>亙<EFBFBD>:
|
||
雿滨蔭: <EFBFBD>𣂼<EFBFBD><EFBFBD>刻祕<EFBFBD><EFBFBD><EFBFBD>爗<EFBFBD><EFBFBD>鞉𠯫敹𨰜<EFBFBD>爗<EFBFBD><EFBFBD>𣂼<EFBFBD><EFBFBD>嗆𠯫敹𨰜<EFBFBD>?
|
||
|
||
甇<EFBFBD>虜<EFBFBD>亙<EFBFBD>蝷箔<EFBFBD>:
|
||
172.17.0.10 - - [23/Dec/2025:10:30:00 +0800] "GET / HTTP/1.1" 200 1234
|
||
172.17.0.10 - - [23/Dec/2025:10:30:01 +0800] "GET /assets/index.js HTTP/1.1" 200 567890
|
||
|
||
API隞<EFBFBD><EFBFBD><EFBFBD>亙<EFBFBD>:
|
||
172.17.0.10 - - [23/Dec/2025:10:30:02 +0800] "GET /api/v1/projects HTTP/1.1" 200 8765
|
||
|
||
<EFBFBD>躰秤<EFBFBD>亙<EFBFBD>:
|
||
2025/12/23 10:30:04 [error] connect() failed (111: Connection refused)
|
||
<EFBFBD>?<3F>𡒊垢<F0A1928A>滚𦛚餈墧𦻖憭梯揖
|
||
|
||
<EFBFBD><EFBFBD>蟮<EFBFBD>亙<EFBFBD>:
|
||
雿滨蔭: <EFBFBD>𣂼<EFBFBD><EFBFBD>刻祕<EFBFBD><EFBFBD><EFBFBD>爗<EFBFBD><EFBFBD>鞉𠯫敹𨰜<EFBFBD>爗<EFBFBD><EFBFBD>𣂼<EFBFBD><EFBFBD>脫𠯫敹𨰜<EFBFBD>?
|
||
靽萘<EFBFBD><EFBFBD>園𡢿: 7憭?
|
||
```
|
||
|
||
---
|
||
|
||
### <20><> **<2A><>𧋦<EFBFBD>湔鰵瘚<E9B0B5><E7989A>**
|
||
|
||
敶枏<EFBFBD>蝡臭誨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>湔鰵<EFBFBD>塚<EFBFBD><EFBFBD>劐誑銝𧢲<EFBFBD>蝔钅<EFBFBD>蝵脫鰵<EFBFBD><EFBFBD>𧋦嚗?
|
||
|
||
#### **甇仿炊1嚗𡁏𧋦<F0A1818F>唳<EFBFBD>撱箸鰵<E7AEB8><E9B0B5>𧋦**
|
||
|
||
```bash
|
||
# <20>狄rontend-v2<76>桀<EFBFBD>
|
||
cd AIclinicalresearch/frontend-v2
|
||
|
||
# 瘚贝<E7989A><E8B49D><EFBFBD>遣
|
||
npm run build
|
||
|
||
# <20><>遣Docker<65>𨅯<EFBFBD>嚗<EFBFBD><E59A97><EFBFBD>砍噡+1嚗?
|
||
docker build -t frontend-service:v1.0.1 .
|
||
|
||
# 撉諹<E69289><E8ABB9>𨅯<EFBFBD>憭批<E686AD>
|
||
docker images frontend-service:v1.0.1
|
||
```
|
||
|
||
#### **甇仿炊2嚗𡁏綫<F0A1818F><E7B6AB><EFBFBD>ACR**
|
||
|
||
```bash
|
||
# <20>餃<EFBFBD>ACR
|
||
echo fengzhibo117 | docker login --username=gofeng117@163.com --password-stdin crpi-cd5ij4pjt65mweeo.cn-beijing.personal.cr.aliyuncs.com
|
||
|
||
# <20>𤘪<EFBFBD>蝑?
|
||
docker tag frontend-service:v1.0.1 crpi-cd5ij4pjt65mweeo.cn-beijing.personal.cr.aliyuncs.com/ai-clinical/ai-clinical_frontend-nginx:v1.0.1
|
||
|
||
docker tag frontend-service:v1.0.1 crpi-cd5ij4pjt65mweeo.cn-beijing.personal.cr.aliyuncs.com/ai-clinical/ai-clinical_frontend-nginx:latest
|
||
|
||
# <20>券<EFBFBD><E588B8><EFBFBD><EFBFBD>?
|
||
docker push crpi-cd5ij4pjt65mweeo.cn-beijing.personal.cr.aliyuncs.com/ai-clinical/ai-clinical_frontend-nginx:v1.0.1
|
||
|
||
docker push crpi-cd5ij4pjt65mweeo.cn-beijing.personal.cr.aliyuncs.com/ai-clinical/ai-clinical_frontend-nginx:latest
|
||
```
|
||
|
||
#### **甇仿炊3嚗锭AE<41>啣漲<E595A3>穃<EFBFBD>嚗<EFBFBD>綫<EFBFBD>琜<EFBFBD>**
|
||
|
||
```yaml
|
||
<EFBFBD>桃<EFBFBD>: <EFBFBD>滢<EFBFBD><EFBFBD>湔鰵憌𡡞埯嚗<EFBFBD><EFBFBD><EFBFBD>湔鰵<EFBFBD>典<EFBFBD>摰硺<EFBFBD>撉諹<EFBFBD>
|
||
|
||
<EFBFBD>滢<EFBFBD>甇仿炊:
|
||
1. <20>餃<EFBFBD>SAE<41>批<EFBFBD><E689B9>?<3F>?餈𥕦<E9A488>摨𠉛鍂霂行<E99C82>
|
||
|
||
2. <20>孵稬<E5ADB5>鞾<EFBFBD>蝵脯<E89DB5>爗<EFBFBD><E78897>鞟<EFBFBD>摨血<E691A8>撣<EFBFBD><E692A3>?
|
||
|
||
3. <20>滨蔭<E6BBA8>啣漲蝑𣇉裦:
|
||
<EFBFBD>啣漲摰硺<EFBFBD><EFBFBD>? 1
|
||
<EFBFBD>啣漲<EFBFBD>園鵭: 5<EFBFBD><EFBFBD><EFBFBD>
|
||
<EFBFBD>𨅯<EFBFBD><EFBFBD><EFBFBD>𧋦: v1.0.1
|
||
|
||
4. <20>孵稬<E5ADB5>鞟&摰𠾼<E691B0>?
|
||
|
||
5. 閫<><E996AB><EFBFBD>啣漲摰硺<E691B0>:
|
||
- <EFBFBD>亦<EFBFBD>摰硺<EFBFBD><EFBFBD>嗆<EFBFBD><EFBFBD><EFBFBD><EFBFBD>亙熒嚗?
|
||
- <EFBFBD>亦<EFBFBD><EFBFBD>躰秤<EFBFBD>亙<EFBFBD>嚗<EFBFBD><EFBFBD><EFBFBD>躰秤嚗?
|
||
- 霈輸䔮瘚贝<EFBFBD>嚗<EFBFBD><EFBFBD><EFBFBD>賣迤撣賂<EFBFBD>
|
||
|
||
6. 蝖株恕<E6A0AA>𣳇䔮憸睃<E686B8>嚗𣬚<E59A97><F0A3AC9A>颯<EFBFBD>𣂼<EFBFBD><F0A382BC>誩<EFBFBD>撣<EFBFBD><E692A3>?
|
||
|
||
7. 憒<><E68692><EFBFBD>𤑳緵<F0A491B3>桅<EFBFBD>嚗𣬚<E59A97><F0A3AC9A>颯<EFBFBD>𣂼<EFBFBD>皛𠾼<E79A9B>?
|
||
- <EFBFBD>芸𢆡<EFBFBD>墧<EFBFBD><EFBFBD>唬<EFBFBD>銝<EFBFBD>銝芰<EFBFBD><EFBFBD>?
|
||
- <EFBFBD>𣳇<EFBFBD><EFBFBD>见𢆡<EFBFBD>滢<EFBFBD>
|
||
```
|
||
|
||
#### **甇仿炊4嚗𡁜<E59A97><F0A1819C>誩<EFBFBD>撣?*
|
||
|
||
憒<EFBFBD><EFBFBD>銝滢蝙<EFBFBD>函<EFBFBD>摨血<EFBFBD>撣<EFBFBD><EFBFBD><EFBFBD>湔𦻖<EFBFBD>券<EFBFBD><EFBFBD>湔鰵嚗?
|
||
|
||
```yaml
|
||
<EFBFBD>滢<EFBFBD>甇仿炊:
|
||
1. <20>餃<EFBFBD>SAE<41>批<EFBFBD><E689B9>?<3F>?餈𥕦<E9A488>摨𠉛鍂霂行<E99C82>
|
||
|
||
2. <20>孵稬<E5ADB5>鞾<EFBFBD>蝵脯<E89DB5>?
|
||
|
||
3. 靽格㺿<E6A0BC>𨅯<EFBFBD><F0A885AF><EFBFBD>𧋦:
|
||
隞? v1.0.0
|
||
<EFBFBD>? v1.0.1
|
||
|
||
4. <20>孵稬<E5ADB5>鞟&摰𠾼<E691B0>?
|
||
|
||
5. 蝑匧<E89D91><E58CA7>函蔡摰峕<E691B0>嚗?-3<><33><EFBFBD>嚗?
|
||
|
||
6. 撉諹<E69289><E8ABB9>啁<EFBFBD><E59581>?
|
||
- <EFBFBD>亦<EFBFBD>摰硺<EFBFBD><EFBFBD>嗆<EFBFBD>?
|
||
- 霈輸䔮<EFBFBD>滨垢憿菟𢒰
|
||
- 瘚贝<EFBFBD><EFBFBD>詨<EFBFBD><EFBFBD>蠘<EFBFBD>
|
||
```
|
||
|
||
---
|
||
|
||
### <20><> **<2A>墧<EFBFBD><E5A2A7>滢<EFBFBD>**
|
||
|
||
憒<EFBFBD><EFBFBD><EFBFBD>啁<EFBFBD><EFBFBD>砍枂<EFBFBD>圈䔮憸矋<EFBFBD><EFBFBD>臭誑敹恍<EFBFBD>笔<EFBFBD>皛𡄯<EFBFBD>
|
||
|
||
```yaml
|
||
<EFBFBD>滢<EFBFBD>甇仿炊:
|
||
1. <20>餃<EFBFBD>SAE<41>批<EFBFBD><E689B9>?<3F>?餈𥕦<E9A488>摨𠉛鍂霂行<E99C82>
|
||
|
||
2. <20>孵稬<E5ADB5>𣂼<EFBFBD><F0A382BC>渲扇敶𨰻<E695B6>?
|
||
|
||
3. <20>曉<EFBFBD>銝𠹺<E98A9D>銝芰迅摰𡁶<E691B0><F0A181B6>穿<EFBFBD>憒<EFBFBD>1.0.0嚗?
|
||
|
||
4. <20>孵稬<E5ADB5>𣂼<EFBFBD>皛𠾼<E79A9B>?
|
||
|
||
5. 蝖株恕<E6A0AA>墧<EFBFBD>
|
||
|
||
6. 蝑匧<E89D91><E58CA7>墧<EFBFBD>摰峕<E691B0>嚗?-2<><32><EFBFBD>嚗?
|
||
|
||
<EFBFBD>墧<EFBFBD><EFBFBD>園𡢿:
|
||
- <EFBFBD>𨅯<EFBFBD>撌脩<EFBFBD>摮? 1-2<><32><EFBFBD>
|
||
- <EFBFBD>𨅯<EFBFBD><EFBFBD>芰<EFBFBD>摮? 2-3<><33><EFBFBD>
|
||
```
|
||
|
||
---
|
||
|
||
### <20><>儭?**皜<><E79A9C><EFBFBD>抒<EFBFBD><E68A92>祇<EFBFBD><E7A587>?*
|
||
|
||
摰𡁏<EFBFBD>皜<EFBFBD><EFBFBD>ACR銝剔<EFBFBD><EFBFBD>抒<EFBFBD><EFBFBD>祇<EFBFBD><EFBFBD>𧶏<EFBFBD><EFBFBD><EFBFBD><EFBFBD>摮睃<EFBFBD>蝛粹𡢿嚗?
|
||
|
||
```yaml
|
||
皜<EFBFBD><EFBFBD>蝑𣇉裦:
|
||
- 靽萘<EFBFBD><EFBFBD><EFBFBD>餈?銝芰<E98A9D><E88AB0>?
|
||
- <EFBFBD>𣳇膄30憭拙<EFBFBD><EFBFBD><EFBFBD>唂<EFBFBD><EFBFBD>𧋦
|
||
- 靽萘<EFBFBD>撣行<EFBFBD><EFBFBD>寞<EFBFBD><EFBFBD><EFBFBD>倌<EFBFBD><EFBFBD><EFBFBD><EFBFBD>穿<EFBFBD>憒<EFBFBD>table<EFBFBD><EFBFBD>rod嚗?
|
||
|
||
<EFBFBD>滢<EFBFBD>甇仿炊:
|
||
1. <20>餃<EFBFBD>ACR<43>批<EFBFBD><E689B9>?
|
||
|
||
2. 餈𥕦<E9A488><F0A595A6>𨅯<EFBFBD>隞枏<E99A9E> <20>?ai-clinical_frontend-nginx
|
||
|
||
3. <20>亦<EFBFBD><E4BAA6><EFBFBD><EFBFBD>厩<EFBFBD><E58EA9>?
|
||
|
||
4. <20>㗇𥋘閬<F0A58B98><E996AC><EFBFBD>斤<EFBFBD><E696A4><EFBFBD>𧋦嚗<F0A78BA6>㗲<EFBFBD>㚁<EFBFBD>
|
||
|
||
5. <20>孵稬<E5ADB5>𣂼<EFBFBD><F0A382BC>扎<EFBFBD>?
|
||
|
||
6. 蝖株恕<E6A0AA>𣳇膄
|
||
|
||
<EFBFBD>𩤃<EFBFBD> 瘜冽<E7989C>:
|
||
- 銝滩<EFBFBD><EFBFBD>𣳇膄甇<EFBFBD>銁雿輻鍂<EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
|
||
- <EFBFBD>𣳇膄<EFBFBD>滨&霈又AE摨𠉛鍂撌脫凒<EFBFBD>啣<EFBFBD><EFBFBD>啁<EFBFBD><EFBFBD>?
|
||
- 撱箄悅<EFBFBD>喳<EFBFBD>靽萘<EFBFBD>2銝芰<EFBFBD><EFBFBD>砌誑靘踹<EFBFBD>皛?
|
||
```
|
||
|
||
---
|
||
|
||
### <20><> **撘寞<E69298>找撓蝻拚<E89DBB>蝵?*
|
||
|
||
<EFBFBD>滨垢Nginx<EFBFBD>滚𦛚<EFBFBD>𡁜虜銝漤<EFBFBD>閬<EFBFBD><EFBFBD>蝜<EFBFBD><EFBFBD>蝻拙捆嚗䔶<EFBFBD><EFBFBD>臭誑<EFBFBD>滨蔭<EFBFBD>芸𢆡隡貊憬嚗?
|
||
|
||
```yaml
|
||
<EFBFBD>滨蔭雿滨蔭: <EFBFBD>𣂼<EFBFBD><EFBFBD>券<EFBFBD>蝵柴<EFBFBD>爗<EFBFBD><EFBFBD>𣂼撕<EFBFBD>找撓蝻押<EFBFBD>?
|
||
|
||
<EFBFBD><EFBFBD>撠誩<EFBFBD>靘𧢲㺭: 2
|
||
霂湔<EFBFBD>: 靽肽<EFBFBD>擃睃虾<EFBFBD>剁<EFBFBD><EFBFBD>喳<EFBFBD>2銝芸<EFBFBD>靘?
|
||
|
||
<EFBFBD><EFBFBD>憭批<EFBFBD>靘𧢲㺭: 5
|
||
霂湔<EFBFBD>: <EFBFBD>滨垢瘚<EFBFBD><EFBFBD>瘜W𢆡<EFBFBD>𡁜虜銝滚之嚗?銝芸<E98A9D>靘贝雲憭?
|
||
|
||
<EFBFBD>拙捆蝑𣇉裦:
|
||
<EFBFBD><EFBFBD><EFBFBD>: CPU雿輻鍂<EFBFBD>?
|
||
<EFBFBD><EFBFBD><EFBFBD>? > 60% <20><>賒 3<><33><EFBFBD>
|
||
瘥𤩺活<EFBFBD>拙捆: +1銝芸<E98A9D>靘?
|
||
<EFBFBD>瑕㭂<EFBFBD>園𡢿: 3<EFBFBD><EFBFBD><EFBFBD>
|
||
|
||
霂湔<EFBFBD>: Nginx敺<EFBFBD><EFBFBD>颲曉<EFBFBD>60% CPU
|
||
|
||
蝻拙捆蝑𣇉裦:
|
||
<EFBFBD><EFBFBD><EFBFBD>: CPU雿輻鍂<EFBFBD>?
|
||
<EFBFBD><EFBFBD><EFBFBD>? < 20% <20><>賒 5<><35><EFBFBD>
|
||
瘥𤩺活蝻拙捆: -1銝芸<EFBFBD>靘?
|
||
<EFBFBD>瑕㭂<EFBFBD>園𡢿: 5<EFBFBD><EFBFBD><EFBFBD>
|
||
<EFBFBD><EFBFBD>撠譍<EFBFBD><EFBFBD>? 2銝芸<E98A9D>靘?
|
||
|
||
<EFBFBD>𩤃<EFBFBD> 摰鮋<E691B0><E9AE8B><EFBFBD><EFBFBD>:
|
||
<EFBFBD>滨垢Nginx<EFBFBD>扯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>嚗?銝?.5<EFBFBD>詨<EFBFBD>靘见虾隞交𣈲<EFBFBD>?
|
||
- 1000+ QPS嚗<53><E59A97><EFBFBD><EFBFBD><EFBFBD>隞塚<E99A9E>
|
||
- 100+ QPS嚗㇁PI隞<49><E99A9E>嚗?
|
||
- <EFBFBD>牐<EFBFBD>銝漤<EFBFBD>閬<EFBFBD><EFBFBD>摰?
|
||
```
|
||
|
||
---
|
||
|
||
### <20>辶 **<2A>𡃏郎<F0A1838F>滨蔭**
|
||
|
||
<EFBFBD>滨蔭<EFBFBD>喲睸<EFBFBD><EFBFBD><EFBFBD><EFBFBD>𡃏郎嚗<EFBFBD><EFBFBD><EFBFBD>嗅<EFBFBD><EFBFBD>圈䔮憸矋<EFBFBD>
|
||
|
||
```yaml
|
||
<EFBFBD>滨蔭雿滨蔭: <EFBFBD>𣂷<EFBFBD><EFBFBD>烐綉<EFBFBD>爗<EFBFBD><EFBFBD>𣂼<EFBFBD><EFBFBD>函<EFBFBD><EFBFBD>扼<EFBFBD>爗<EFBFBD><EFBFBD>𣂼<EFBFBD>撱箏<EFBFBD>霅西<EFBFBD><EFBFBD>踺<EFBFBD>?
|
||
|
||
<EFBFBD>刻<EFBFBD><EFBFBD>𡃏郎閫<EFBFBD><EFBFBD>:
|
||
|
||
1. 摰硺<E691B0><E7A1BA>亙熒璉<E78692><E79289>亙仃韐?
|
||
- <EFBFBD>∩辣: <EFBFBD>亙熒璉<EFBFBD><EFBFBD>亙仃韐?> 3甈?
|
||
- 蝥批<EFBFBD>: 蝝扳<EFBFBD>?
|
||
- <EFBFBD>𡁶䰻: <EFBFBD>凋縑 + <20>厰<EFBFBD>
|
||
|
||
2. CPU雿輻鍂<E8BCBB><E98D82><EFBFBD>擃?
|
||
- <EFBFBD>∩辣: CPU > 60% <20><>賒 5<><35><EFBFBD>
|
||
- 蝥批<EFBFBD>: 霅血<EFBFBD>
|
||
- <EFBFBD>𡁶䰻: <EFBFBD>厰<EFBFBD> + <20>桐辣
|
||
|
||
3. <20><><EFBFBD>雿輻鍂<E8BCBB><E98D82><EFBFBD>擃?
|
||
- <EFBFBD>∩辣: <EFBFBD><EFBFBD><EFBFBD> > 80% <20><>賒 5<><35><EFBFBD>
|
||
- 蝥批<EFBFBD>: 霅血<EFBFBD>
|
||
- <EFBFBD>𡁶䰻: <EFBFBD>厰<EFBFBD> + <20>桐辣
|
||
|
||
4. <20>躰秤<E8BAB0><E7A7A4><EFBFBD>擃?
|
||
- <EFBFBD>∩辣: <EFBFBD>躰秤<EFBFBD>?> 1% <20><>賒 3<><33><EFBFBD>
|
||
- 蝥批<EFBFBD>: 蝝扳<EFBFBD>?
|
||
- <EFBFBD>𡁶䰻: <EFBFBD>凋縑 + <20>厰<EFBFBD>
|
||
|
||
5. 撟喳<E6929F><E596B3>滚<EFBFBD><E6BB9A>園𡢿餈<F0A1A2BF>鵭
|
||
- <EFBFBD>∩辣: <EFBFBD>滚<EFBFBD><EFBFBD>園𡢿 > 500ms <20><>賒 5<><35><EFBFBD>
|
||
- 蝥批<EFBFBD>: 霅血<EFBFBD>
|
||
- <EFBFBD>𡁶䰻: <EFBFBD>厰<EFBFBD> + <20>桐辣
|
||
|
||
<EFBFBD>𡁶䰻<EFBFBD>孵<EFBFBD><EFBFBD>滨蔭:
|
||
- <EFBFBD>厰<EFBFBD><EFBFBD>箏膥鈭? <20>𥕦遣蝢方<E89DA2><E696B9>箏膥鈭綽<E988AD><E7B6BD>瑕<EFBFBD>Webhook
|
||
- <EFBFBD>桐辣: <EFBFBD>滨蔭<EFBFBD>𡃏郎<EFBFBD>𠉛頂鈭粹<EFBFBD>蝞?
|
||
- <EFBFBD>凋縑: <EFBFBD>滨蔭<EFBFBD>𧢲㦤<EFBFBD>瘀<EFBFBD>撱箄悅隞<EFBFBD>鍂鈭𡒊揮<EFBFBD>亙<EFBFBD>霅佗<EFBFBD>
|
||
```
|
||
|
||
---
|
||
|
||
## <20><> <20><><EFBFBD>
|
||
|
||
### <20><> **<2A>滨蔭<E6BBA8><E894AD>辣皜<E8BEA3><E79A9C>**
|
||
|
||
<EFBFBD>函蔡餈<EFBFBD><EFBFBD>銝剜<EFBFBD><EFBFBD>羓<EFBFBD><EFBFBD>滨蔭<EFBFBD><EFBFBD>辣嚗?
|
||
|
||
```yaml
|
||
<EFBFBD>砍𧑐<EFBFBD><EFBFBD>辣 (AIclinicalresearch/frontend-v2/):
|
||
- Dockerfile (憭𡁻𧫴畾菜<E795BE>撱粹<E692B1>蝵?
|
||
- nginx.conf (Nginx<6E>滚𦛚<E6BB9A>券<EFBFBD>蝵?
|
||
- docker-entrypoint.sh (摰孵膥<E5ADB5>臬𢆡<E887AC>𡁏𧋦)
|
||
- .dockerignore (<28><>遣<EFBFBD>㘾膄<E398BE><E88684>辣)
|
||
|
||
SAE<EFBFBD>滨蔭 (<28>冽綉<E586BD>嗅蝱<E59785>滨蔭):
|
||
- 摨𠉛鍂<EFBFBD>箸𧋦靽⊥<EFBFBD>
|
||
- 摰硺<EFBFBD>閫<EFBFBD>聢<EFBFBD>峕㺭<EFBFBD>?
|
||
- VPC蝵𤑳<EFBFBD><EFBFBD>滨蔭
|
||
- <EFBFBD>𨅯<EFBFBD><EFBFBD>啣<EFBFBD><EFBFBD>𣬚<EFBFBD><EFBFBD>?
|
||
- <EFBFBD>臬<EFBFBD><EFBFBD>㗛<EFBFBD>
|
||
- <EFBFBD>亙熒璉<EFBFBD><EFBFBD>?
|
||
- <EFBFBD>祉<EFBFBD>霈輸䔮<EFBFBD>滨蔭
|
||
```
|
||
|
||
---
|
||
|
||
### <20><> **<2A>詨<EFBFBD><E8A9A8><EFBFBD>﹝<EFBFBD>暹𦻖**
|
||
|
||
```yaml
|
||
<EFBFBD>輸<EFBFBD>鈭穃<EFBFBD><EFBFBD>寞<EFBFBD>獢?
|
||
- SAE鈭批<EFBFBD><EFBFBD><EFBFBD>﹝: https://help.aliyun.com/product/1172298.html
|
||
- ACR鈭批<EFBFBD><EFBFBD><EFBFBD>﹝: https://help.aliyun.com/product/60716.html
|
||
- VPC鈭批<EFBFBD><EFBFBD><EFBFBD>﹝: https://help.aliyun.com/product/27706.html
|
||
|
||
憿寧𤌍<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>﹝:
|
||
- <EFBFBD>滨垢Nginx<EFBFBD>函蔡<EFBFBD><EFBFBD><EFBFBD>: docs/05-<2D>函蔡<E587BD><E894A1>﹝/06-<2D>滨垢Nginx-SAE摰孵膥<E5ADB5>函蔡<E587BD><E894A1><EFBFBD>.md
|
||
- 敹恍<EFBFBD>罸<EFBFBD>蝵淞OP: docs/05-<2D>函蔡<E587BD><E894A1>﹝/01-敹恍<E695B9>罸<EFBFBD>蝵淞OP-<2D>嗅抅蝖<E68A85><E89D96>?md
|
||
- <EFBFBD>函蔡<EFBFBD>嗆<EFBFBD><EFBFBD>餉<EFBFBD>: docs/05-<2D>函蔡<E587BD><E894A1>﹝/00-<2D>函蔡<E587BD>嗆<EFBFBD><E59786>餉<EFBFBD>.md
|
||
```
|
||
|
||
---
|
||
|
||
### <20>働 **<2A><>雿喳<E99BBF>頝菜<E9A09D>餌<EFBFBD>**
|
||
|
||
```yaml
|
||
摰匧<EFBFBD><EFBFBD>?
|
||
<EFBFBD>?雿輻鍂銝𤘪<E98A9D>蝵𤑳<E89DB5>嚗ĀPC嚗厰<E59A97>蝳?
|
||
<EFBFBD>?<3F>臬<EFBFBD><E887AC>㗛<EFBFBD>摮睃<E691AE><E79D83>𤩺<EFBFBD>靽⊥<E99DBD>
|
||
<EFBFBD>?<3F>舐鍂HTTPS嚗<53><E59A97>鈭抒㴓憓<E3B493><E68693>
|
||
<EFBFBD>?<3F>滨蔭摰匧<E691B0>蝏<EFBFBD><E89D8F><EFBFBD>?
|
||
<EFBFBD>?<3F>鞱<EFBFBD>Nginx<6E><78>𧋦<EFBFBD>?
|
||
|
||
<EFBFBD>扯<EFBFBD>:
|
||
<EFBFBD>?<3F>舐鍂Gzip<69>讠憬嚗<E686AC><E59A97>撠?0%隡㰘<E99AA1>嚗?
|
||
<EFBFBD>?<3F>滨蔭<E6BBA8><E894AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>摮条<E691AE><E69DA1>?
|
||
<EFBFBD>?雿輻鍂CDN<44>𣳇<EFBFBD><F0A3B387><EFBFBD><EFBFBD>舫<EFBFBD>㚁<EFBFBD>
|
||
<EFBFBD>?隡睃<E99AA1>Docker<65>𨅯<EFBFBD>憭批<E686AD>
|
||
|
||
<EFBFBD>舫<EFBFBD><EFBFBD>?
|
||
<EFBFBD>?<3F>喳<EFBFBD>2銝芸<E98A9D>靘页<E99D98>擃睃虾<E79D83>剁<EFBFBD>
|
||
<EFBFBD>?<3F>滨蔭<E6BBA8>亙熒璉<E78692><E79289>?
|
||
<EFBFBD>?<3F>舐鍂<E88890>芸𢆡隡貊憬
|
||
<EFBFBD>?<3F>滨蔭<E6BBA8>𡃏郎<F0A1838F>烐綉
|
||
<EFBFBD>?<3F>啣漲<E595A3>穃<EFBFBD><E7A983>滢<EFBFBD>憌𡡞埯
|
||
|
||
<EFBFBD>舐輕<EFBFBD>斗<EFBFBD>?
|
||
<EFBFBD>?雿輻鍂霂凋<E99C82><E5878B>𣇉<EFBFBD><F0A38789>砍噡
|
||
<EFBFBD>?靽萘<E99DBD><E89098><EFBFBD>餈?銝芰<E98A9D><E88AB0>砌誑靘踹<E99D98>皛?
|
||
<EFBFBD>?摰𡁏<E691B0>皜<EFBFBD><E79A9C><EFBFBD>抒<EFBFBD><E68A92>祇<EFBFBD><E7A587>?
|
||
<EFBFBD>?霈啣<E99C88><E595A3>䀹凒<E480B9>亙<EFBFBD>
|
||
<EFBFBD>?<3F><>﹝<EFBFBD>𦠜𧒄<F0A6A09C>湔鰵
|
||
```
|
||
|
||
---
|
||
|
||
### <20>?**撣貉<E692A3><E8B289>桅<EFBFBD>FAQ**
|
||
|
||
**Q1: <20>滨垢<E6BBA8>滚𦛚<E6BB9A><F0A69B9A>閬<EFBFBD><E996AC>憭抒<E686AD>閫<EFBFBD>聢嚗?*
|
||
```
|
||
A: 0.5<EFBFBD>?GB頞喳<E9A09E><E596B3>?
|
||
- Nginx<6E><78><EFBFBD>擃䀹<E69383>嚗<EFBFBD><E59A97><EFBFBD>刻<EFBFBD>皞𣂼<E79A9E>撠?
|
||
- 0.5<EFBFBD>詨虾隞交𣈲<EFBFBD>?000+ QPS
|
||
- 銝滩<E98A9D>餈<EFBFBD>漲<EFBFBD>滨蔭瘚芾晶韏<E699B6><E99F8F>
|
||
```
|
||
|
||
**Q2: <20><>閬<EFBFBD><E996AC>蝵桀<E89DB5>撠睲葵摰硺<E691B0>嚗?*
|
||
```
|
||
A: <20>煺漣<E785BA>臬<EFBFBD>撱箄悅2銝芸<E98A9D>靘卝<E99D98>?
|
||
- 靽肽<E99DBD>擃睃虾<E79D83>剁<EFBFBD>1銝芣<E98A9D><E88AA3>𨀣𧒄<F0A880A3>?銝芰誧蝏剜<E89D8F><E5899C>∴<EFBFBD>
|
||
- <20>滨垢敺<E59EA2><E695BA><EFBFBD><EFBFBD>閬?銝芯誑銝𠰴<E98A9D>靘?
|
||
- 瘚<><E7989A><EFBFBD>孵<EFBFBD>憭扳𧒄<E689B3>臭誑<E887AD>滨蔭CDN
|
||
```
|
||
|
||
**Q3: 憒<><E68692><EFBFBD>仿<EFBFBD><E4BBBF>𡒊垢<F0A1928A>滚𦛚<E6BB9A><F0A69B9A><EFBFBD>蝵穃𧑐<E7A983><F0A79190>嚗?*
|
||
```
|
||
A: 隞𤾸<E99A9E>蝡特AE摨𠉛鍂<F0A0899B>瑕<EFBFBD>嚗?
|
||
1. <20>餃<EFBFBD>SAE<41>批<EFBFBD><E689B9>?
|
||
2. 餈𥕦<E9A488><F0A595A6>𡒊垢摨𠉛鍂霂行<E99C82>
|
||
3. <20>亦<EFBFBD><E4BAA6>𣂼<EFBFBD><F0A382BC>刻挪<E588BB>桅<EFBFBD>蝵柴<E89DB5>爗<EFBFBD><E78897>𨧞PC<50><43><EFBFBD>霈輸䔮<E8BCB8>啣<EFBFBD><E595A3>?
|
||
4. 憭滚<E686AD>IP<49>啣<EFBFBD>嚗<EFBFBD>聢撘𧶏<E69298>172.17.x.x嚗?
|
||
```
|
||
|
||
**Q4: <20>臬<EFBFBD><E887AC>㗛<EFBFBD><E3979B>滨蔭<E6BBA8>擧瓷<E693A7><E793B7><EFBFBD><EFBFBD>𦒘<EFBFBD><F0A69298>痹<EFBFBD>**
|
||
```
|
||
A: <20><>閬<EFBFBD><E996AC><EFBFBD>臬<EFBFBD><E887AC>剁<EFBFBD>
|
||
1. 靽格㺿<E6A0BC>臬<EFBFBD><E887AC>㗛<EFBFBD>
|
||
2. <20>孵稬<E5ADB5>鞾<EFBFBD><E99EBE>胯<EFBFBD>烐<EFBFBD><E78390>鞾<EFBFBD><E99EBE>圈<EFBFBD>蝵脯<E89DB5>?
|
||
3. 蝑匧<E89D91>摰硺<E691B0><E7A1BA>滚鍳摰峕<E691B0>
|
||
4. <20>亦<EFBFBD><E4BAA6>臬𢆡<E887AC>亙<EFBFBD>蝖株恕<E6A0AA>㗛<EFBFBD><E3979B>?
|
||
```
|
||
|
||
**Q5: <20>函蔡<E587BD>啁<EFBFBD><E59581>砍<EFBFBD>憒<EFBFBD><E68692>敹恍<E695B9>笔<EFBFBD>皛𡄯<E79A9B>**
|
||
```
|
||
A: SAE<41>舀<EFBFBD>銝<EFBFBD><E98A9D>桀<EFBFBD>皛𡄯<E79A9B>
|
||
1. 餈𥕦<E9A488><F0A595A6>𣂼<EFBFBD><F0A382BC>渲扇敶𨰻<E695B6>?
|
||
2. <20>曉<EFBFBD>銝𠹺<E98A9D>銝芰迅摰𡁶<E691B0><F0A181B6>?
|
||
3. <20>孵稬<E5ADB5>𣂼<EFBFBD>皛𠾼<E79A9B>?
|
||
4. 蝑匧<E89D91>1-2<><32><EFBFBD>摰峕<E691B0><E5B395>墧<EFBFBD>
|
||
```
|
||
|
||
**Q6: 憒<><E68692><EFBFBD>滨蔭HTTPS嚗?*
|
||
```
|
||
A: 銝斤<E98A9D><E696A4>孵<EFBFBD>嚗?
|
||
1. 雿輻鍂SAE<41>𣂷<EFBFBD><F0A382B7><EFBFBD><EFBFBD><EFBFBD>㵪<EFBFBD><E3B5AA>芸𢆡HTTPS嚗?
|
||
2. 蝏穃<E89D8F><E7A983>芸<EFBFBD>銋匧<E98A8B><E58CA7>滚僎銝𠹺<E98A9D>SSL霂<4C>髡
|
||
|
||
<20>煺漣<E785BA>臬<EFBFBD>撘箇<E69298>撱箄悅雿輻鍂HTTPS
|
||
```
|
||
|
||
**Q7: <20>滨垢<E6BBA8><E59EA2>閬<EFBFBD><E996AC><EFBFBD>交㺭<E4BAA4>桀<EFBFBD><E6A180>梹<EFBFBD>**
|
||
```
|
||
A: 銝漤<E98A9D>閬<EFBFBD><E996AC>?
|
||
- <20>滨垢<E6BBA8>舐滲<E88890>蹱<EFBFBD><E8B9B1><EFBFBD>皞琜<E79A9E>HTML/JS/CSS嚗?
|
||
- <20>芷<EFBFBD>閬<EFBFBD><E996AC>朞<EFBFBD>Nginx隞<78><E99A9E>霈輸䔮<E8BCB8>𡒊垢API
|
||
- <20>唳旿摨栞<E691A8><E6A09E>亦眏<E4BAA6>𡒊垢<F0A1928A>滚𦛚憭<F0A69B9A><E686AD>
|
||
```
|
||
|
||
**Q8: 瘥𤩺活<F0A4A9BA>湔鰵<E6B994>質<EFBFBD><E8B3AA>齿鰵<E9BDBF><E9B0B5>遣Docker<65>𨅯<EFBFBD><F0A885AF>梹<EFBFBD>**
|
||
```
|
||
A: <20>舐<EFBFBD><E88890>?
|
||
1. 靽格㺿<E6A0BC>滨垢隞<E59EA2><E99A9E>
|
||
2. npm run build嚗<64><E59A97><EFBFBD>鞉鰵<E99E89><E9B0B5>ist/嚗?
|
||
3. docker build嚗<64><E59A97><EFBFBD><EFBFBD><EFBFBD><EFBFBD>𨅯<EFBFBD>嚗?
|
||
4. docker push嚗<68>綫<EFBFBD><E7B6AB><EFBFBD>ACR嚗?
|
||
5. SAE<41>齿鰵<E9BDBF>函蔡嚗<E894A1><E59A97><EFBFBD>𡝗鰵<F0A19D97>𨅯<EFBFBD>嚗?
|
||
|
||
餈蹱糓<E8B9B1><E7B393><EFBFBD><EFBFBD><EFBFBD>捆<EFBFBD>典<EFBFBD><E585B8>函蔡瘚<E894A1><E7989A>
|
||
```
|
||
|
||
**Q9: Docker<65>𨅯<EFBFBD>憭芸之<E88AB8>𦒘<EFBFBD><F0A69298>痹<EFBFBD>**
|
||
```
|
||
A: 敶枏<E695B6><E69E8F>𨅯<EFBFBD><F0A885AF>芣<EFBFBD>92MB嚗<42>歇蝏誩<E89D8F>撠譍<E692A0><E8AD8D>?
|
||
- 憭𡁻𧫴畾菜<E795BE>撱綽<E692B1><E7B6BD>芯<EFBFBD><E88AAF>躰<EFBFBD>銵峕𧒄<E5B395><F0A79284>辣嚗?
|
||
- Alpine<6E>箇<EFBFBD><E7AE87>𨅯<EFBFBD>嚗<EFBFBD><E59A97>撠𦶣inux<75>𤏸<EFBFBD><F0A48FB8><EFBFBD><EFBFBD>
|
||
- 撌脩<E6928C><E884A9>舀<EFBFBD>隡睃<E99AA1><E79D83><EFBFBD>𠶖<EFBFBD>?
|
||
```
|
||
|
||
**Q10: 憒<><E68692><EFBFBD>亦<EFBFBD>摰墧𧒄霈輸䔮<E8BCB8>亙<EFBFBD>嚗?*
|
||
```
|
||
A: SAE<41>批<EFBFBD><E689B9>唳䰻<E594B3>页<EFBFBD>
|
||
<20>𣂼<EFBFBD><F0A382BC>刻祕<E588BB><E7A595><EFBFBD>爗<EFBFBD><E78897>鞉𠯫敹𨰜<E695B9>爗<EFBFBD><E78897>𣂼<EFBFBD><F0A382BC>嗆𠯫敹𨰜<E695B9>?
|
||
|
||
<20>臭誑<E887AD>见<EFBFBD>嚗?
|
||
- <20><><EFBFBD>鵎TTP霂瑟<E99C82>嚗㇎RL<52><4C>𠶖<EFBFBD><F0A0B696><EFBFBD><EFBFBD><EFBFBD><EFBFBD>摨娍𧒄<E5A88D>湛<EFBFBD>
|
||
- Nginx<6E>躰秤<E8BAB0>亙<EFBFBD>
|
||
- 摰孵膥<E5ADB5>臬𢆡<E887AC>亙<EFBFBD>
|
||
```
|
||
|
||
---
|
||
|
||
## <20>㴓 **<2A>函蔡璉<E894A1><E79289>交<EFBFBD><E4BAA4>?*
|
||
|
||
<EFBFBD><EFBFBD><EFBFBD>𠬍<EFBFBD><EFBFBD>刻<EFBFBD>銝芣<EFBFBD><EFBFBD>閧&霈日<EFBFBD>蝵脣<EFBFBD><EFBFBD>琜<EFBFBD>
|
||
|
||
```yaml
|
||
<EFBFBD>函蔡<EFBFBD>滚<EFBFBD>憭?
|
||
<EFBFBD>𡢅<EFBFBD> ACR<43>𨅯<EFBFBD>撌脫綫<E884AB><E7B6AB><EFBFBD>v1.0.0嚗?
|
||
<EFBFBD>𡢅<EFBFBD> <20>𡒊垢<F0A1928A>滚𦛚撌脤<E6928C>蝵莎<E89DB5><E88E8E>瑕<EFBFBD><E79195><EFBFBD><EFBFBD><EFBFBD>啣<EFBFBD>嚗?
|
||
<EFBFBD>𡢅<EFBFBD> VPC<50>䔶漱<E494B6>X㦤撌脣<E6928C>撱?
|
||
<EFBFBD>𡢅<EFBFBD> 摰匧<E691B0>蝏<EFBFBD>歇<EFBFBD>滨蔭
|
||
|
||
SAE摨𠉛鍂<EFBFBD>滨蔭:
|
||
<EFBFBD>𡢅<EFBFBD> 摨𠉛鍂<F0A0899B>滨妍嚗餎rontend-nginx-service
|
||
<EFBFBD>𡢅<EFBFBD> 摰硺<E691B0>閫<EFBFBD>聢嚗?.5<EFBFBD>?GB
|
||
<EFBFBD>𡢅<EFBFBD> 摰硺<E691B0><E7A1BA>圈<EFBFBD>嚗?
|
||
<EFBFBD>𡢅<EFBFBD> <20>𨅯<EFBFBD><F0A885AF>啣<EFBFBD>嚗帋<E59A97><E5B88B>厩<EFBFBD>蝏𨅯<E89D8F><F0A885AF>㵪<EFBFBD>撣?vpc嚗?
|
||
<EFBFBD>𡢅<EFBFBD> <20>𨅯<EFBFBD><F0A885AF><EFBFBD>𧋦嚗鯝1.0.0
|
||
|
||
<EFBFBD>臬<EFBFBD><EFBFBD>㗛<EFBFBD><EFBFBD>滨蔭:
|
||
<EFBFBD>𡢅<EFBFBD> BACKEND_SERVICE_HOST嚗𡁜歇<F0A1819C>滨蔭嚗?72.17.x.x嚗?
|
||
<EFBFBD>𡢅<EFBFBD> BACKEND_SERVICE_PORT嚗𡁜歇<F0A1819C>滨蔭嚗?001嚗?
|
||
|
||
<EFBFBD>亙熒璉<EFBFBD><EFBFBD>仿<EFBFBD>蝵?
|
||
<EFBFBD>𡢅<EFBFBD> 璉<><E79289>亥楝敺<E6A59D><E695BA>/health
|
||
<EFBFBD>𡢅<EFBFBD> 璉<><E79289>亦垢<E4BAA6><E59EA2><EFBFBD>80
|
||
<EFBFBD>𡢅<EFBFBD> 璉<><E79289>亙<EFBFBD>霈殷<E99C88>HTTP
|
||
|
||
<EFBFBD>函蔡撉諹<EFBFBD>:
|
||
<EFBFBD>𡢅<EFBFBD> 摰硺<E691B0><E7A1BA>嗆<EFBFBD><E59786><EFBFBD><EFBFBD>亙熒
|
||
<EFBFBD>𡢅<EFBFBD> <20>亙熒璉<E78692><E79289>伐<EFBFBD><E4BC90>朞<EFBFBD>
|
||
<EFBFBD>𡢅<EFBFBD> 銝駁△霈輸䔮嚗𡁏迤撣?
|
||
<EFBFBD>𡢅<EFBFBD> SPA頝舐眏嚗𡁏迤撣賂<E692A3><E8B382>瑟鰵銝?04嚗?
|
||
<EFBFBD>𡢅<EFBFBD> API隞<49><E99A9E>嚗𡁏迤撣賂<E692A3><E8B382>蟖ORS<52>躰秤嚗?
|
||
<EFBFBD>𡢅<EFBFBD> <20>蹱<EFBFBD><E8B9B1><EFBFBD>皞琜<E79A9E>甇<EFBFBD>虜嚗<E8999C><E59A97>摮条<E691AE><E69DA1><EFBFBD><EFBFBD>
|
||
<EFBFBD>𡢅<EFBFBD> Gzip<69>讠憬嚗𡁜歇<F0A1819C>舐鍂
|
||
|
||
<EFBFBD>烐綉<EFBFBD><EFBFBD><EFBFBD>霅?
|
||
<EFBFBD>𡢅<EFBFBD> 摰墧𧒄<E5A2A7>烐綉嚗𡁜歇<F0A1819C>滨蔭
|
||
<EFBFBD>𡢅<EFBFBD> <20>亙<EFBFBD><E4BA99>亦<EFBFBD>嚗𡁜虾霈輸䔮
|
||
<EFBFBD>𡢅<EFBFBD> <20>𡃏郎閫<E9838E><E996AB>嚗𡁜歇<F0A1819C>滨蔭
|
||
|
||
<EFBFBD>券<EFBFBD>摰峕<EFBFBD>嚗屸<EFBFBD>蝵脫<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
```
|
||
|
||
---
|
||
|
||
**<EFBFBD><EFBFBD>﹝蝏𤘪<EFBFBD>**
|
||
|
||
憒<EFBFBD><EFBFBD><EFBFBD>煾䔮嚗諹窈<EFBFBD>仿<EFBFBD><EFBFBD>詨<EFBFBD><EFBFBD><EFBFBD>﹝<EFBFBD>𤥁<EFBFBD>蝟餅<EFBFBD><EFBFBD>舀𣈲<EFBFBD><EFBFBD><EFBFBD>?
|
||
|
||
蟡嗪<EFBFBD>蝵脤◇<EFBFBD>抬<EFBFBD><EFBFBD><EFBFBD>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|