微信云托管本身是一个服务器,里面的软件都已经配置好了,直接使用即可,适用于一些简单部署的项目。直接把项目直接上传到服务器即可。无需各种繁琐的软件配置和打包,微信云托管统统给你搞定。而且系统会根据使用量计费,对于一些使用量比较少的系统,也是很划算的。本文从一个 Spring Boot 项目简单部署云托管项目。
云托管简介
在 官网 显示微信云托管的几个优势:
开箱即用支持多种后端语言自动扩容
云托管相对传统项目的优势
发布一个简单的 demo 在linux服务器
创建 springboot 项目将 springboot 项目打成war 包在 linux 服务器安装 jdk、tomcat,阿里云或者腾讯云开放对应的端口安装 mysql 执行sql 语句上传 war 包到 tomcat 服务器
对应的云托管
创建 springboot 项目在云托管数据库执行 sql 语句上传springboot文件
云托管直接上传项目文件即可。
入门
进入控制台后,找到 服务列表 -> 新建服务
写好服务名称后,选择不同方式上传代码,这里有 github、gitlab、gitee、手动上传代码包 等等。我这里选择了使用手动上传代码包。
此处上传的代码和Spring Boot项目区别在于这里上传的代码需要添加额外的两个文件, Dockerfile 和 settings.xml,文件在 https://github.com/WeixinCloud/wxcloudrun-springboot 可以找到:
Dockerfile
Dockerfile 配置 docker 环境,里面主要命令是项目打包、运行。 这里的打包是打成一个 jar 包,如果项目是原来打成一个 war 包,要改成打成 jar 包。 需要将 pom.xml
jar
改成
war
Dockerfile 还有打包和运行的命令,修改下面用红框框起来的数据,改成打包的名称:
settings.xml
settings.xml是 maven 打包的依赖项配置。默认使用腾讯云maven依赖,不需要改动配置。
为了减少项目线上部署调试时间,先在本地执行打包命令,确保打包成功:
mvn clean package
如果打包成功,直接上传文件,这里为了减少上传时间,可以先对文件进行压缩。
上面的端口要和springboot里面配置的端口要一致,最好在 application.yml 配置文件设置默认端口80,省去每次发布项目都要修改端口的麻烦。
上传成功之后,点击发布。发布成功之后访问公网地址。如下图所示:
走完一遍流程,发现云托管有几个不足的地方:
发布时间大概要花7,8分钟,主要是花在下载 maven 依赖的时间比较多。如果 maven 依赖在本地配置,就不能在云托管使用依赖。
以上两个问题,如果使用上传打包好的 jar 包,就能解决这个问题,期待后续能支持上传 jar 包的选项。
总结
如果部署一些不太复杂的项目,微信云托管是一个不错的选择,可以根据配置使用,自动扩容。Spring Boot 添加两个文件 Dockerfile 和 settings.xml。
Dockerfile 需要修改打包名称和运行名称settings.xml 不用修改 Spring Boot 需要改成 jar 包的打包方式。项目端口最好配置成默认端口 80。如果觉得文章对你有帮助的话,请点个赞吧!*



