杜燕明

杜燕明

Anno框架交流:478399354 欢迎大家加群相互交流!

.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  

体验地址:http://49.232.112.70/

 

欢迎加入QQ群:478399354 ,到这里我们互为师长项目学习。

posted @ 2021-10-11 17:34  杜燕明  阅读(1685)  评论(16编辑  收藏  举报