评论

【纯小白】走通云托管本地调试开发的过程,持续补充~

小白走通微信云托管本地开发调试及部署服务

window环境下,看微软巨硬的文档安装docker desktop~

https://learn.microsoft.com/zh-cn/windows/wsl/tutorials/wsl-containers

--------------------------------------------------------------

使用云托管在本地调试的具体操作问题与解决。如果你在使用云托管本地调试开发,面对同样的问题时,希望可用帮到你!

操作系统: WINDOW 10

项目模板:koa

C盘至少留个5 G空间

前置工具准备:

  1. 安装vscode 、weixin-cloudbase 插件、node 12+、npm
  2. 安装docker 众所周知 官方文档链接docker网站你是打不开的,除非... !哈哈, 需要找网上找找安装一下Docker desktop
  3. 拉取官方koa 服务版本,或者手动下载代码到文件夹,如果你打不开github , 可用安装一个win应用 Watt Toolkit 里面有免费的github 加速!
  4. 安装微信云托管CLI 工具包 https://cloud.weixin.qq.com/cli/basics.html,运行迁移到云托管指令,并可用使用deploy 自动部署到云托管

如果本地调试需要多个服务时,按照官方文档提示的需要打开配置文件所在的同层目录,例如我的:

我这里顶层目录wxcloud, 同层添加项目配置文件,里面指定当前需要运行的调试项目;services 目录里可以有多个服务项目文件夹!

user 文件夹 - 是我拷贝的官方koa 服务模板,你可以在同层添加自己的CLI项目,运行前需要更改project.config.json 内的指定名称!

好了,走到这里是一堆的枯燥安装等待时间...

下面,开始整活!

一、Docker desktop 更换国内可用源!

打开docker desktop ----》 设置 ---------》Docker engine 配置文件中,添加:

"registry-mirrors": [
      "https://hub.uuuadc.top",
      "https://docker.anyhub.us.kg",
      "https://dockerhub.jobcher.com",
      "https://dockerhub.icu",
      "https://docker.ckyl.me",
      "https://docker.awsl9527.cn"
  ]


别找其他的啦,什么网易的、docker cn的源运行后都会报错!以上源配置后可用!

二、按照官方文档配置weixin cloudbase 插件属性,主要2个:

appid 和 密匙(按照官方教程在云托管控制台 生成)

三、修改调试配置文件,

在根目录下.cloudbase\container\debug.json 中,添加数据库环境变量值!

否则,运行调试项目,会提示:sequelize 数据库连接不了,访问的地址是127.0.0.0

四、运行调试项目前,先启动VPC代理数据库服务:

如果用到wx 开放接口,同样需要开启相关代理。

五、启动Local container容器服务

经过好多秒后,启动成功!可以在终端看到:

一些熟悉的sequelize 执行的脚本,最后启动成功 监听80端口! 同样,docker desktop内也可以看到容器已启动:

这时,就可以容器右键,浏览器中打开,no wx auth


最终的效果,


这一刻!真舒服,折腾了一下午。测试点击 按钮【计数】,终端看处理,

请求正常完成!云托管控制台-MYSQL- 数据库管理, 打开DMC 登录自己的数据库,查看数据有变更~ 🤭

最后一次编辑于  07-09  
点赞 1
收藏
评论

2 个评论

  • 平子
    平子
    09-18

    您好,我有一个问题,想问一下,如何把数据库代理到本机电脑的数据库?

    09-18
    赞同
    回复 3
    • 平子
      平子
      09-19
      已经解决了,只需要在本地的debug.json中把环境变量调整成从容器请求本机的地址就可以了,数据库地址:host.docker.internal:3306
      09-19
      1
      回复
    • 面具
      面具
      09-26
      这个问题困扰很久了,我还以为还要在vscode添加本地localhost到代理VPC,然后启动代理,再启动服务,结果一直报连接不到127.0.0.1。这个解决大问题了,感谢感谢。对了你知道为什么它在vpc代理的方式连接不到吗?是不是因为默认情况下,vpc代理连接的docker无法访问宿主的ip?那么微信云开发里的自带服务器、数据库它们是不是也不在一个宿主机中?
      09-26
      回复
    • 平子
      平子
      10-23回复面具
      VPC 代理应该是代理到线上的服务的,我理解你如果想用vpc代理访问宿主,那需要宿主能够直接被外网访问吧,我是这么理解的,不确定是不是这样
      10-23
      回复
  • 陈豪
    陈豪
    07-21

    d

    +++

    07-21
    赞同
    回复
登录 后发表内容