.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://140.143.207.244/Home/Login
欢迎加入QQ群:478399354 ,到这里我们互为师长项目学习。

.NET 开发一个服务器 应用管理工具的更多相关文章
- windows下运行的linux服务器批量管理工具(带UI界面)
产生背景: 由于做服务器运维方面的工作,需要一人对近千台LINUX服务器进行统一集中的管理,如同时批量对LINUX服务器执行相关的指令.同时批量对LINUX服务器upload程序包.同时批量对LINU ...
- 【Python之旅】第六篇(七):开发简易主机批量管理工具
[Python之旅]第六篇(七):开发简易主机批量管理工具 python 软件开发 Paramiko模块 批量主机管理 摘要: 通过前面对Paramiko模块的学习与使用,以及Python中多线程与多 ...
- 邮件服务器hMailServer管理工具hMailServer Administrator汉化(转)
//实现:邮件服务器hMailServer管理工具hMailServer Administrator的汉化 //环境: Windows Server 2008 R2 hMailServer Admin ...
- 通过uniCloud白捡一个在线图库管理工具,可支持图床外链
喜欢写文章的技术大佬们,应该都有一个自己的在线图片管理工具吧. 尤其是在写markdown时,为了让我们的文章"图文并茂",显得不那么枯燥,就经常需要在合适的地方插入一些关联性的图 ...
- 【Nodejs】326- 从零开发一个node命令行工具
本文由 IMWeb 社区授权转载自腾讯内部 KM 论坛.点击阅读原文查看 IMWeb 社区更多精彩文章. 什么是命令行工具? 命令行工具(Cmmand Line Interface)简称cli,顾名思 ...
- 快速入门PaddleOCR,并试用其开发一个搜题小工具
介绍 PaddleOCR 是一个基于百度飞桨的OCR工具库,包含总模型仅8.6M的超轻量级中文OCR,单模型支持中英文数字组合识别.竖排文本识别.长文本识别.同时支持多种文本检测.文本识别的训练算法. ...
- 用Java开发一个本地服务管理软件
一.最终界面先贴上最终效果图,图1为初始化界面,图二为点击启动/停止之后的中间过渡状态,图三为启动成功后弹出的提示框 把动态gif图片嵌入到jpg背景图中?用Adobe ImageReady即可办到 ...
- 基于SOUI开发一个简单的小工具
基于DriectUI有很多库,比如 Duilib (免费) soui (免费) DuiVision (免费) 炫彩 (界面库免费,UI设计器付费,不提供源码) skinui (免费使用,但不开放源码, ...
- 远程服务器的管理工具SSH
1.SSH是什么? SSH:Secure Shell 安全外壳协议 建立在应用层基础上的安全协议 可靠,专为远程登录会话和其他网络服务提供安全性的协议 有效防止远程管理过程中的信息泄露问题 SSH客户 ...
随机推荐
- linux 常用命令(一)——查看硬盘空间-内存-线程的cpu负载-线程内存
系统参数检查: df -h [enter] 检查硬盘空间 TIP: 使用 man df 可查看该命令使用说明 ; q 退出. free检查内存使用情况: free [enter] TIP: 使用 ma ...
- jvm学习笔记:虚拟机栈
虚拟机栈 Each Java Virtual Machine thread has a private Java Virtual Machine stack, created at the same ...
- openswan中out_sa()函数报文封装思想
out_sa()函数报文封装思想讲解 1. out_sa前言 我已经在上一篇文章中将in_struct函数的基本原理进行了阐述,而out_struct()的实现基本是相同的,如果能理解in_struc ...
- GridView控件使用
增加显示列gridView.Columns.AddVisible("AgentName", "姓名");设置是否为只读gridView1.OptionsBeha ...
- MySQL实战45讲(01--05)-笔记
目录 MySQL复习 01 | 基础架构:一条SQL查询语句是如何执行的? 连接器 查询缓存 分析器 优化器 执行器 02 | 日志系统:一条SQL更新语句是如何执行的? 重要的日志模块:redo l ...
- 【MyBatis】几种批量插入效率的比较
批处理数据主要有三种方式: 反复执行单条插入语句 foreach 拼接 sql 批处理 一.前期准备 基于Spring Boot + Mysql,同时为了省略get/set,使用了lombok,详见p ...
- sass和js的联动(共享变量)
一般做共享变量用于主题功能 假设我们在xxx.scss中声明了一个 theme:blue,我们在 js 中该怎么获取这个变量呢?我们可以通过import variables from '@/style ...
- Spring5(七)——AOP注解
一.AOP注解 1.介绍 上一节介绍了 AspectJ 框架如何实现 AOP,具体的实现方式是通过 xml 来进行配置的.xml 方式思路清晰,便于理解,但是书写过于麻烦.这一节介绍注解的方式来进行 ...
- 【第九篇】- Git 标签之Spring Cloud直播商城 b2b2c电子商务技术总结
Git 标签 如果你达到一个重要的阶段,并希望永远记住那个特别的提交快照,你可以使用 git tag 给它打上标签. 比如说,我们想为我们的 xxx 项目发布一个"1.0"版本. ...
- Spring Boot学习(一)——Spring Boot介绍
Spring Boot介绍 Spring Boot简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式 ...