Rainbond 可以识别.NetCore 语言的项目并一键编译部署到平台。
一、代码识别
代码主目录中包含以.sln
或者.csproj
结尾的文件并且不包含Dockerfile
文件时,平台识别项目语言类型为.NetCore
二、源码编译
当前版本 Rainbond 默认使用dotnet:2.1-sdk
进行源码编译,编译方式如下:
dotnet restore
dotnet publish -c Release
三、项目运行
运行环境采用dotnet:2.1-aspnetcore-runtime
runtime 版本,自动将上诉编译的结果文件存放于运行环境的/app
目录下。由于平台咱无法很好的感知项目的入口运行文件,需要在源码主目录中定义rainbondfile
定义项目的运行方式,例如:
ports:
- port: 5000
procotol: http
cmd: dotnet aspnetapp.dll
ports
定义项目监听的端口(必须监听泛地址 *
或者0.0.0.0
)
cmd
定义项目启动方式,根据项目 publish 后生成的入口运行文件为准。
四、示例代码
提示:
- 目前仅支持单项目代码维护形式,如果你一个代码仓库维护了多个 Project,例如一个微服务架构,那么首先建议你将每个 Project 分离到不同仓库或同个仓库不同二级目录下。