| | |
| | | |
| | | - **2026-09-13**ï¼æ°å¢ä¸é®æå
èæ¬ `package-deploy.py`ï¼jar æ¹ä¸ºå
åµå端ï¼é¨ç½²æºä¸åéè¦ nginxï¼ï¼å é¤ Redis ç¸å
³è¯´æï¼ä»£ç æªä½¿ç¨ï¼ï¼è¡¥ `sql_wyc.sql` ä¸ `summary.template-dir`ï¼è¡¥ `jwt.secret` åå¼è§åï¼è¡¥é¨ç½²åéªè¯æ¸
åã |
| | | - 2026-08-27ï¼é¦çï¼zip é¨ç½²å
+ nginx æ¹æ¡ï¼ã |
| | | |
| | | --- |
| | | |
| | | ## å¯é¥ä¸é
ç½®ï¼2026-09-26 èµ·ï¼æå
å¿
è¯»ï¼ |
| | | |
| | | ### åå±çº¦å® |
| | | |
| | | | ä½ç½® | ç¨é | æ¯å¦è¿ git | æ¯å¦è¿ jar | |
| | | | --- | --- | --- | --- | |
| | | | `traffic-audit-server/src/main/resources/application.yml` | è¿ jar çé»è®¤é
ç½®ï¼**åªæå ä½ç¬¦**ï¼`${TRAFFIC_DB_PASSWORD:}`ã`${DEEPSEEK_API_KEY:}` çï¼ | å¦ï¼å·² gitignoreï¼ç¨ `application.yml.example` 忍¡æ¿ï¼ | **æ¯**ï¼æ çå®å¼ï¼ | |
| | | | `traffic-audit-server/config/application.yml` | æ¬æºå¼åçå®å¼ï¼åºå£ä»¤ / JWT / DeepSeek keyï¼ | å¦ï¼å·² gitignoreï¼ | å¦ | |
| | | | jar å级ç `backend/application.yml` | é¨ç½²æºçå®å¼ï¼ä¼å
级é«äº jar å
ç½®ï¼ | å¦ | å¦ï¼å¨å
å¤ï¼ç°åºå¡«ï¼ | |
| | | | ç¯å¢åé `TRAFFIC_DB_PASSWORD` / `TRAFFIC_DB_USER` / `TRAFFIC_DB_URL` / `TRAFFIC_JWT_SECRET` / `DEEPSEEK_API_KEY` | è¦ç以ä¸ä»»æä¸é¡¹ | å¦ | å¦ | |
| | | |
| | | ### æ¬æºå¼åï¼å¼æ¾ç¯å¢åéï¼ä¸è½æä»¶ï¼ |
| | | |
| | | ```powershell |
| | | setx TRAFFIC_DB_PASSWORD "æ¬æº MySQL å£ä»¤" # è®¾ä¸æ¬¡å³å¯ï¼ä¹åæ°å¼çç»ç«¯èªå¨å¸¦ä¸ |
| | | setx DEEPSEEK_API_KEY "DeepSeek key" |
| | | # éè¦æ¶åè¦çï¼setx TRAFFIC_DB_URL / TRAFFIC_DB_USER / TRAFFIC_JWT_SECRET |
| | | |
| | | powershell -NoProfile -ExecutionPolicy Bypass -File start-dev.ps1 # ä¼èªå¨ä»æ³¨å表补é½å¹¶æ³¨å
¥å端è¿ç¨ |
| | | ``` |
| | | |
| | | - `traffic-audit-server/config/application.yml` åªç注é说æï¼æ ææï¼ï¼å æå®ä¹ä¸å½±åï¼å¼å
¨å¨ç¯å¢åééï¼ã |
| | | - è¥ç¨ IDE ç´æ¥è·ä¸»ç±»ï¼è¯·å¨**æ°å¼ç**ç»ç«¯/IDE éå¯å¨ï¼è®©æ°ç»ç«¯ç»§æ¿ç¨æ·ç¯å¢åéï¼ï¼ææå¨ `setx` åéå¯ IDEã |
| | | |
| | | ### æå
åèªæ¥ï¼30 ç§ï¼ |
| | | |
| | | ```powershell |
| | | # 1) ç¡®è®¤è¿ jar çé
置没æçå®å¯é¥ï¼åºåªçå° ${...}ï¼ |
| | | Select-String -Path traffic-audit-server\src\main\resources\application.yml -Pattern "password:|api-key:|secret:" |
| | | # 2) æå®å
ååéªè¯ä¸æ¬¡ jar å
é¨ |
| | | python -c "import zipfile;print(zipfile.ZipFile('traffic-audit-server/target/traffic-audit-server-1.0.0-SNAPSHOT.jar').read('BOOT-INF/classes/application.yml').decode('utf-8'))" | Select-String "password:|api-key:" |
| | | ``` |
| | | |
| | | |
| | | ### ä¸é®æå
ï¼æ¨èï¼2026-09-27 èµ·ï¼ |
| | | |
| | | ```powershell |
| | | powershell -NoProfile -ExecutionPolicy Bypass -File pack-deploy.ps1 |
| | | # å¯éåæ°ï¼ -OutRoot "E:\è¯éª" -SkipFrontend |
| | | ``` |
| | | |
| | | èæ¬ååä»¶äºï¼ |
| | | 1. `mvn clean package -DskipTests` æå»ºå端 jarï¼ |
| | | 2. **è§£å jar èªæ£**ï¼æ£æ¥ `BOOT-INF/classes/application.yml` æ¯å¦å
¨ä¸ºå ä½ç¬¦ââ䏿¦åç° `sk-` æææå£ä»¤**ç´æ¥ä¸æ¢æå
**ï¼ |
| | | 3. `npm run build` é建å端 `dist`ï¼ |
| | | 4. æ `deploy-templates/` ç»è£
宿´é¨ç½²å
ï¼backend / frontend / db / README-é¨ç½²è¯´æ.txtï¼ï¼è¾åºå° `<OutRoot>\traffic-audit-deploy-<yyyyMMdd>`ã |
| | | |
| | | 模æ¿ä»¶ç»ä¸æ¾å¨ **`deploy-templates/`**ï¼å·²å
¥åºï¼ï¼å¤é¨ `application.yml`ã`start-backend.cmd/.sh`ã`nginx.conf.example`ã`db\{init.sql,sql_city_bus,sql_city_taxi,sql_wyc}.sql`ã`README-é¨ç½²è¯´æ.txt`ãæ¹æ¨¡æ¿å³æ¹æå
产ç©ã |
| | | |
| | | ### è½®æ¢å¯é¥ååæ¥æ¬æº |
| | | |
| | | ```powershell |
| | | powershell -NoProfile -ExecutionPolicy Bypass -File set-secrets.ps1 |
| | | ``` |
| | | |
| | | 交äºå¼è¾å
¥ï¼åè½¦è·³è¿æä¸é¡¹ï¼ï¼èªå¨ `setx` å°ç¨æ·ç¯å¢åéå¹¶æç¤ºéå¯å端ï¼å¼ä¸ä¼åå
¥ä»»ä½æä»¶ã |
| | | |
| | | ### é¨ç½²æºä¸å /æ¢ DeepSeek key |
| | | |
| | | 1. æå
ä¸ä¼ åï¼ç¼è¾ **jar å级**ç `backend/application.yml`ï¼`deepseek.api-key: "ä½ çæ°key"`ï¼ç空åé¡µé¢ AI åæä¸å¯ç¨ï¼å
¶ä½åè½æ£å¸¸ï¼ï¼ |
| | | 2. éå¯å端ï¼`start-backend.cmd`ï¼æ `java -jar traffic-audit-server-1.0.0-SNAPSHOT.jar`ï¼ï¼ |
| | | 3. 页é¢éç¹ä¸æ¬¡ AI åæç¡®è®¤å¯ç¨ï¼ |
| | | 4. **ä¸è¦**廿¹ jar å
é¨çé
ç½®ï¼æ¹äºä¸æ¬¡åå
就丢ï¼ï¼ä¹ä¸è¦æ key æäº¤è¿ä»»ä½ä»åºæä»¶ã |
| | | |
| | | ### è½®æ¢ï¼ä½åºï¼å·²æ³é²ç key |
| | | |
| | | 1. ç»å½ DeepSeek æ§å¶å° â API Keys â æ°å»ºä¸ä¸ª keyï¼ |
| | | 2. å é¤/ç¦ç¨æ§ keyï¼æ§ key ç«å»å¤±æï¼æ¤åæå
带åºå»ç jar éé£ä»½å³ä½åºï¼ï¼ |
| | | 3. æä¸é¢ç¬¬ 1~3 æ¥ææ° key å¡«å°é¨ç½²æºçå¤é¨é
置并éå¯éªè¯ã |