一:背景

  1、Anno.Deploy

  Anno.Deploy可以和 Anno集成使用,用于部署新的服务、启动服务、停止服务、清理服务。也可以单独使用,用于守护程序。

使用方法

1、和Anno集成使用

.NET 开发一个服务器 应用管理工具_git

 .NET 开发一个服务器 应用管理工具_github_02

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 的名称