netcore一键部署到linux服务器以服务方式后台运行

AntDeploy 是我开发一款开源一键发布插件

  • 将本地vs中的代码,一键打包,部署到任意的远程服务器

  • 部署方式支持 windows服务,linux服务,docker容器,iis

  • 支持增量发布(只更新有修改的)

  • 支持一键回滚(出了问题快速恢复)

  • 支持查看发布历史记录

AntDeploy的代码托管地址(感恩star)

https://github.com/yuzd/AntDeploy

本章介绍如何使用AntDeploy一键部署到远程linux服务器作为服务运行

  • linux服务器为aws的 ecs: 系统为ubuntu18.04.4 (x64)

  • 服务器上无安装dotnet环境(因为AntDeploy用的是独立部署)

第一步 安装Linux端Agent

请在qq群(488312978)文件里面获取

把文件上传你的linux服务器

解压后有3个文件 

  • AntAgent.service 是安装为服务的描述文件

  • AntDeployAgentLinuxService 执行文件

  • AntDeployAgentLinuxService.config 配置参数

按照下面更改AntAgent.service中的 WorkingDirectory 和 ExecStart

[Unit]
Description=AntAgent[Service]
Type=notify## WorkingDirectory是上面的AntDeployAgentLinuxService所在目录
WorkingDirectory=/home/ubuntu/download
## ExecStart是AntDeployAgentLinuxService执行文件的完整路径
ExecStart=/home/ubuntu/download/AntDeployAgentLinuxService
SyslogIdentifier=AntAgent
Restart=always        
RestartSec=5[Install]
WantedBy=multi-user.target

赋予这个可执行文件权限

chmod +x AntDeployAgentLinuxService

修改agent配置文件AntDeployAgentLinuxService.config


<configuration><appSettings><!-- 访问agent的Token,保护你服务器安全的 --><add key="Token" value="aaaa"/><!-- agent对外提供服务的端口号,在云服务器里面得开放端口不然访问不进来 --><add key="Port" value="8091"/><!--下面的一般保持默认即可 --><!--是否启用备份  true代表备份 false 代表不备份  不填=true  --><add key="NeedBackUp" value="" /><!--配置Mac白名单地址列表 多个用半角逗号隔开--><add key="MacWhiteList" value="" /><!--配置发布历史最多保留个数(默认10),解释:每次发布就是一个发布历史,回滚的时候是选择这个发布历史进行操作的--><add key="OldPulishLimit" value="10" /><!--每个项目的发布版本历史记录会保底留存10个(上面配置的),对于超过的会走日期比对(当前服务器时间-版本批次日期)>10(下面配置) 的发布文件夹会被删除,防止磁盘占用过大 10代表10天 不填默认10--><add key="ClearOldPublishFolderOverDays" value="10" /><!--发布使用目录 为空代表当前目录 -><add key="DeployDir" value=""/></appSettings>
</configuration>

执行下面命令把AntAgent安装为linux服务运行

sudo cp AntAgent.service /etc/systemd/system/AntAgent.servicesudo systemctl daemon-reloadsudo systemctl enable AntAgentsudo systemctl start AntAgent

安装成功后使用命令:sudo systemctl status AntAgent 查看是否成功运行

好了,以上服务器上agent安装完毕

如果agent已经启动了 再修改agent的配置文件,那你可以用命令

sudo systemctl restart AntAgent 

重新运行agent

第二步 安装AntDeploy插件

 

 

 

如果下载很慢可以插件市场官网下载下来双击安装:https://marketplace.visualstudio.com/items?itemName=nainaigu.AntDeployVsix

打开你要发布的工程

工程文件右键可以召唤AntDeploy 如果没有 看下是不是被禁用了 

第一次发布需要配置服务器的agent信息

  1. 新增一个环境

  2. 在环境下添加Token服务器(就是上面agent的服务器Ip:端口号)

进入Linux服务发布

  1. 选择刚刚添加的环境

  2. 录入要发布的服务名称

  3. 点击发布 

agent做了什么日志里面详细记录了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/306776.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构——基于 Dijsktra 算法的最短路径求解

实验七 基于 Dijsktra 算法的最短路径求解 【实验目的】 掌握图的邻接矩阵表示法&#xff0c;掌握采用邻接矩阵表示法创建图的算法。掌握求解最短路径的 Dijsktra 算法。 【实验内容】 问题描述 一张地图包括 n 个城市,假设城市间有 m 条路径(有向图),每条路径的长度 已知。给…

loadrunner录制事件为0_测试工具LoadRunner常见问题汇总,解决方案整理

LoadRunner是一种预测系统行为和性能的负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题&#xff0c;可适用于各种体系架构的自动负载测试&#xff0c;能预测系统行为并评估系统性能。我们在使用它进行测试的过程中经常会遇到一些错误&…

.NET应用如何优雅的实现功能定时开关

点击上方蓝字关注“汪宇杰博客”导语我们在打工的时候&#xff0c;总能遇到一种类型的需求&#xff1a;“我想要这个活动广告在双11期间才显示”&#xff0c;“我想要这个API在20号以后才开放”&#xff0c;可能你觉得这个需求没什么难的&#xff0c;写个时间判断不就行了&…

数据结构——图-迪杰斯特拉算法

问题描述 将图以邻接矩阵或邻接表存储&#xff0c;实现Dijkstra算法。 算法设计 迪杰斯特拉算法&#xff1a; 1.假设用带权的邻接矩阵arc&#xff0c;来表示带权有向图&#xff0c;arc[i][j]&#xff0c;表示弧<vi,vj>上的权值。若<vi,vj>不存在&#xff0c;则置…

单体 soa 微服务 区别_漫谈何时从单体架构迁移到微服务?

面对微服务如火如荼的发展&#xff0c;很多人都在了解&#xff0c;学习希望能在自己的项目中帮得上忙&#xff0c;当你对微服务的庐山真面目有所了解后&#xff0c;接下来就是说服自己了&#xff0c;到底如何评估微服务&#xff0c;什么时候使用微服务&#xff0c;什么时间点最…

2020了,最流行的密码依旧是123456

喜欢就关注我们吧&#xff01;密码管理器 NordPass 于日前发布的一份报告中揭示了 2020 年最常见的密码&#xff0c;并提供了有关如何使密码更安全的建议。根据 NordPass 的研究&#xff0c;在今年 200 种最常用的密码中&#xff0c;“123456”位居第一&#xff0c;有 250 万人…

计算机二级和英语四六级是同一个账号吗,英语四六级考试和计算机考试的登录账号和密码一样吗?我好像混了,但是密码一直输不对,...

两个密码都记得直接试就出来了非常的简单&#xff0c;如果实在不行的话重置一下大学英语六级考试(又称CET-6&#xff0c;全称为“College English Test-6”)是由国家统一出题的&#xff0c;统一收费&#xff0c;统一组织考试&#xff0c;用来评定应试人英语能力的全国性的考试&…

C# 中的本地函数

今天我们来聊一聊 C# 中的本地函数。本地函数是从 C# 7.0 开始引入&#xff0c;并在 C# 8.0 和 C# 9.0 中加以完善的。引入本地函数的原因我们来看一下微软 C# 语言首席设计师 Mads Torgersen 的一段话&#xff1a;Mads Torgersen&#xff1a;我们认为这个场景是有用的 —— 您…

数据结构——图-有向图和无向图的邻接表基础

#include <stdio.h> #include <stdlib.h> #define VertexType char //顶点的数据类型&#xff08;char&#xff09; #define VertexMax 20 //最大顶点个数 typedef struct ArcNode//边表 {int adjvex;//存储的是该顶点在顶点数组即AdjList[]中的位置 struct ArcN…

2019山科计算机专业分数线,2019山东科技大学研究生分数线汇总(含2016-2019历年复试)...

2019山东科技大学研究生分数线(含2016-2019历年复试)考研就是人生的第二次高考&#xff0c;是再一次改变自己命运的机会&#xff0c;所谓7分靠努力&#xff0c;3分靠填报&#xff0c;山东科技大学历年研究生复试分数线是2019-2020届考研学子十分关心的问题&#xff0c;以下是如…

b+树时间复杂度_第15期:索引设计(索引组织方式 B+ 树)

谈到索引&#xff0c;大家并不陌生。索引本身是一种数据结构&#xff0c;存在的目的主要是为了缩短数据检索的时间&#xff0c;最大程度减少磁盘 IO。任何有数据的场景几乎都有索引&#xff0c;比如手机通讯录、文件系统(ext4xfsfs)、数据库系统(MySQLOracle)。数据库系统和文件…

结合控制台程序和K8S的CronJob完成定时任务

前言 老黄前段时间遇到了一个数据清洗的需求&#xff0c;其实就是每天凌晨把昨天的数据清洗一遍&#xff0c;归归类。这是一个比较典型的定时任务的处理场景。定时任务可以说就一把利器&#xff0c;几乎每个公司都离不开&#xff0c;它的应用场景也不在少数&#xff0c;比如&am…

数据结构——图-有向带权图的邻接表基础

#include <stdio.h> #include <stdlib.h> #define VertexType char //顶点的数据类型&#xff08;char&#xff09; #define VertexMax 20 //最大顶点个数 typedef struct ArcNode//边表 {int adjvex;//存储的是该顶点在顶点数组即AdjList[]中的位置int weight; …

vs里面mfc是什么_最近!一大批人正在前往文安,究竟发生了什么?

阅读本文前&#xff0c;请您先点击上面蓝色字体“文安家乡群”再点击“关注”&#xff0c;这样您就可以加入文安家乡群了。最近&#xff0c;文安的火车站汽车站&#xff0c;来了一大批外地人&#xff0c;挤爆了文安车站…究竟发生了什么事儿&#xff1f;让这么多人蜂拥而至&…

html 去除max-height,HTML Style maxHeight用法及代码示例

maxHeight属性设置/返回元素的最大高度。 maxHeight属性仅影响block-level元素&#xff0c;绝对或固定位置元素。用法:它用于设置maxHeight属性&#xff1a;object.style.maxHeight "none|length|%|initial|inherit"它用于返回maxHeight属性&#xff1a;object.styl…

数据结构——图-有向带权图的邻接表

#include <stdio.h> #include <stdlib.h> #define VertexType char //顶点的数据类型&#xff08;char&#xff09; #define VertexMax 20 //最大顶点个数 typedef struct ArcNode//边表 {int adjvex;//存储的是该顶点在顶点数组即AdjList[]中的位置int weight; …

ASP.NET Core使用HostingStartup增强启动操作

概念在ASP.NET Core中我们可以使用一种机制来增强启动时的操作&#xff0c;它就是HostingStartup。如何叫"增强"操作&#xff0c;相信了解过AOP概念的同学应该都非常的熟悉。我们常说AOP使用了关注点分离的方式&#xff0c;增强了对现有逻辑的操作。而我们今天要说的…

计算机网络实验arp协议分析,计算机网络ARP地址协议解析实验报告

计算机网络ARP地址协议解析实验报告 (5页)本资源提供全文预览&#xff0c;点击全文预览即可全文预览,如果喜欢文档就下载吧&#xff0c;查找使用更方便哦&#xff01;9.9 积分计算机网络实验报告、实验目的:1. 掌握ARP协议的报文格式2. 掌握ARP协议的工作原理3. 理解ARP高速缓存…

数据结构——图-最短路径长度中最大的一个

#include<stdio.h> #include<string.h> #define INF 32767 #define MAXVEX 30 int dist[MAXVEX]; //建立dist数组int path[MAXVEX]; //建立path数组int S[MAXVEX]; //建立S数组typedef char VertexType;typedef struct graph {int n,e;VertexType vexs[MAXVE…

一个情怀引发的生产事故

在一个项目中&#xff0c;需要轻量级用到脚本语言&#xff0c;来提高应用服务的灵活性。因为知道Roslyn可以动态编辑C#&#xff0c;本着情怀&#xff0c;就自然用Roslyn来处理这块业务了。开在windows上执行&#xff0c;一次调用风平浪静&#xff0c;因为这个功能使用频次不高&…