.NET 开发一个服务器 应用管理工具
一:背景
1、Anno.Deploy
Anno.Deploy可以和 Anno集成使用,用于部署新的服务、启动服务、停止服务、清理服务。也可以单独使用,用于守护程序。
使用方法
1、和Anno集成使用
2、单独使用
annoDeploy status 查看程序状态 annoDeploy start [workingName] 启动程序 annoDeploy stop [workingName] 停止程序
annoDeploy status 查看程序状态
HelloWorldService21 UP pid 24864 admin HelloWorldService22 DOWN pid -1 admin
annoDeploy start [workingName] 启动程序
[17:44:15:6832]: HelloWorldService21 已启动! HelloWorldService21 UP pid 14744 admin
annoDeploy stop [workingName] 停止程序
[17:45:24:2212]: HelloWorldService21 已停止! HelloWorldService21 DOWN pid -1 admin
3、annoDeploy 配置文件
<?xml version="1.0" encoding="utf-8" ?> <configuration> <!--0,0 第一位是 工作站,第二位数据中心 (所有的 AnnoService 的 两位数不能重复例如不能存在【1,2】【1,2】) 可以存在【1,2】【2,1】 --> <IdWorker>0,1</IdWorker> <!--App名称--> <AppName>Anno.Deploy</AppName> <!--监听端口--> <Port>7999</Port> <!--权重--> <Weight>1</Weight> <!--功能 非Anno.Plugs 加入方式--> <FuncName></FuncName> <!--忽略的功能 Trace,Logic--> <IgnoreFuncName></IgnoreFuncName> <!--超时时间毫秒--> <TimeOut>300000</TimeOut> <!--注册到的目标--> <Ts Ip="127.0.0.1" Port="7010"/> <IocDll> </IocDll> <appSettings> <!-- 程序放置的目录--> <add key="work_directory" value="E:\AnnoDeployStorage"/> <!-- 和Anno集成使用的时候的口令--> <add key="deploySecret" value="duyanming"/> </appSettings> </configuration>
4、annoDeploy 配置一个守护程序
如果是通过在线面板部署的程序不需要此步骤
在工作目录下面找到 proc
文件夹,下面的每一个文件都代表一个程序 新建一个文件 HelloWorldService21
内容:
{ "Running":true, "AutoStart":"1", "AnnoProcessDescription":"admin", "ReStartErrorCount":0, "Id":24628, "WorkingDirectory":"HelloWorldService21", "Cmd":"dotnet HelloWorldService.dll -p 7029", "NodeName":"Anno.Deploy" }
"Running":true, //程序是否在运行,初次配置设置为 false "AutoStart":"1",//是否自动启动 "AnnoProcessDescription":"admin",//程序描述 "ReStartErrorCount":0,//重启失败次数 初次配置设置为 0 "Id":-1,//程序进程Id 初次配置设置为 -1 "WorkingDirectory":"HelloWorldService21",//程序名称 (程序需要放置到work_directory目录下名字为HelloWorldService21 配置文件名称和程序文件夹名称一致) "Cmd":"dotnet HelloWorldService.dll -p 7029",//启动命令 "NodeName":"Anno.Deploy"//annoDeploy 的名称
后面在带领大家开发一个部署代理服务,希望大家多多关注,多多转发。
github Anno:https://github.com/duyanming/Anno.Core
gitee :https://gitee.com/dotnetchina/anno.core
Anno管理面板Viper:https://github.com/duyanming/Viper
欢迎加入QQ群:478399354 ,到这里我们互为师长项目学习。