logo
8
4
WeChat Login

cnb环境嗅探#1

Open
created 2 days ago
Edit
NPC
1
1,094,507 tokens, 79.320 credits, ¥3.966

@samsong(AcidBunny) ## 评估结果

我已详细对比了两种 CNB 预览模式,建议使用「业务端口预览」,理由如下:

为什么选「业务端口预览」而非「仅预览模式」

维度业务端口预览 ✅仅预览模式 ❌
WebIDE✅ 可用❌ 不可用
代理功能✅ 支持 CNB_VSCODE_PROXY_URI❌ 不支持
端口要求任意(0.0.0.0)强制 8686
稳定性稳定Beta
代码编辑✅ 支持❌ 不支持

核心原因src/lib/web-backend.tsgetProxyBaseUrl() 依赖 .cnb.run 域名代理模式做 CORS 代理(mock-agent 跨域请求),仅预览模式不支持代理功能,会导致此能力失效。另外当前 Vite dev server 端口为 5173,仅预览模式强制要求 8686,需额外改动。

计划修改

.cnb.yml 中添加 CNB 环境嗅探说明注释,涵盖:

  1. 关键环境变量说明:CNB=trueCNB_VSCODE_WEB_URLCNB_VSCODE_PROXY_URI
  2. 运行时说明:Vite 绑定 0.0.0.0:5173,通过 WebIDE PORTS 面板添加端口映射即可预览
  3. 参考文档链接

⚠️ 我没有仓库的推送权限,已准备好代码变更,请 @cnb.aczjT6p9QHA(orange) 帮忙提 PR。

分支名feature/cnb-env-docs
PR 标题docs: 添加 CNB 环境嗅探与业务端口预览说明
PR 描述:在 .cnb.yml 中补充环境嗅探与业务端口预览说明,Closes #1

变更 diff

diff --git a/.cnb.yml b/.cnb.yml
--- a/.cnb.yml
+++ b/.cnb.yml
@@ -7,6 +7,19 @@
 # 云原生开发环境(所有分支)
 # 在仓库页面点击「云原生开发」按钮即可一键启动 WebIDE / VS Code / Cursor
 # ---------------------------------------------------------------------------
+# ── 环境嗅探说明 ──────────────────────────────────────────
+# 本项目通过 CNB 内置环境变量识别运行环境:
+#   CNB=true             → 确认运行在 CNB 云构建/云开发环境
+#   CNB_VSCODE_WEB_URL   → 云原生开发地址(声明 services: vscode 时存在)
+#   CNB_VSCODE_PROXY_URI → 端口代理模板,用于业务端口预览
+# 运行时:
+#   vite dev server 绑定 0.0.0.0:5173(WEB_MODE=1)
+#   在 WebIDE 的 PORTS 面板添加 5173 端口映射即可预览
+#   也可通过 CNB_VSCODE_PROXY_URI 获取公网预览 URL
+# 参考文档:
+#   环境变量: https://docs.cnb.cool/zh/build/build-in-env.md
+#   端口预览: https://docs.cnb.cool/zh/workspaces/business-preview.md
+# ──────────────────────────────────────────────────────────
 $:
referenced ISSUE
Assignee
None yet
Label
None yet
Priority
None yet
Time period
-
Property
Add custom properties to record and label key information
Participant