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

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

  • 将本地 vs 中的代码,一键打包,部署到任意的远程服务器
  • 部署方式支持 windows 服务,linux 服务,docker 容器,iis
  • 支持增量发布(只更新有修改的)
  • 支持一键回滚(出了问题快速恢复)
  • 支持查看发布历史记录

AntDeploy 的代码托管地址

https://github.com/yuzd/AntDeploy

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

  • linux 服务器为 aws 的 ecs: 系统为 ubuntu18.04.4 (x64)
  • 服务器上无安装 dotnet 环境(因为AntDeploy用的是独立部署)

第一步 安装 Linux 端 Agent

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

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

把文件上传你的 linux 服务器

解压后有 3 个文件 netcore 一键部署到 linux 服务器以服务方式后台运行

  • 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

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

修改 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.service

sudo systemctl daemon-reload

sudo systemctl enable AntAgent

sudo systemctl start AntAgent

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

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

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

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

sudo systemctl restart AntAgent

 重新运行 agent

第二步 安装 AntDeploy 插件

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

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

打开你要发布的工程

工程文件右键可以召唤 AntDeploy 如果没有 看下是不是被禁用了 netcore 一键部署到 linux 服务器以服务方式后台运行

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

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

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

进入 Linux 服务发布

  1. 选择刚刚添加的环境
  2. 录入要发布的服务名称
  3. 点击发布 netcore 一键部署到 linux 服务器以服务方式后台运行

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

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


来源:dotNET 跨平台公众号

© 版权声明

☆ END ☆
喜欢就点个赞吧
点赞0 分享
图片正在生成中,请稍后...