如何为Cloud Code本地模拟器配置HTML文件同步功能?
Cloud Run模拟器HTML文件自动同步配置方案
1. 新建Skaffold配置文件
在项目根目录创建skaffold.yaml,配置文件同步规则:
apiVersion: skaffold/v4beta6 kind: Config build: artifacts: - image: my_image_name docker: dockerfile: Dockerfile deploy: cloudrun: {} sync: manual: # 匹配本地所有HTML文件,同步到容器工作目录 - src: "**/*.html" dest: /app # 若HTML集中在特定目录(如public),可修改为: # - src: "public/**/*.html" # dest: /app/public
2. 关联Skaffold配置到launch.json
在你的launch.json中添加skaffoldConfig字段,指向刚创建的配置文件:
{ "version": "0.2.0", "configurations": [ { "name": "Cloud Run: Run/Debug Locally", "type": "cloudcode.cloudrun", "request": "launch", "build": { "docker": { "path": "Dockerfile" } }, "skaffoldConfig": "${workspaceFolder}/skaffold.yaml", // 新增该行 "image": "my_image_name", "service": { "name": "my_app", "containerPort": 8080, "env": [ { "name": "PROJECT_ID", "value": "some_id" } ], "resources": { "limits": { "memory": "2028Mi" } } }, "target": { "minikube": {} }, "watch": true, "debug": { "sourceFileMap": { "${workspaceFolder}": "/app" } } } ] }
3. 适配开发模式(可选)
如果你的项目通过npm run build打包HTML,开发时希望跳过构建直接同步原始文件:
- 注释Dockerfile中的
RUN npm run build - 启动命令改用开发模式(如
npm run dev),确保Node服务读取原始静态文件而非构建产物
4. 验证生效
重启Cloud Run模拟器,修改本地HTML文件后,容器内对应路径的文件会自动同步,刷新浏览器即可看到更新。
注意事项
- 路径匹配规则可根据项目结构调整,比如同步模板文件(如
.ejs),只需修改src为"**/*.ejs" - 若使用Express等框架,需关闭视图缓存(如
app.set('view cache', false)),避免浏览器加载旧缓存
内容的提问来源于stack exchange,提问作者Raphael
相关产品推荐
相关产品推荐

