如果你想将 .net core 项目以服务的形式部署到 windows 系统,希望本篇文章能够让你少走弯路 dotnet-warp 安装使用 dotnet-warp 是一个全局的.NET Core 工具,允许将.NET Core 项目打包为单个可执行文件 项目地址:https://github.com/Hubert-Rybak/dotnet-warp 安装:dotnet tool install --global dotnet-warp 使用:在项目输出目录执行 dotnet-warp 即可将应…
轻便式发布 与.net fx不同 需要dotnet.exe来引导 Path:默认为 C:\Program Files\dotnet\dotnet.exe: Startup directory:程序所在的目录,就是最后程序dll所在的目录: Arguments:该程序dll的名称,一般是项目名加上.dll.…
本文以创建的WebAPI项目为例子进行讲解(本人使用VS Code创建的项目) 1.使用VS Code创建WebAPI项目(项目名称自定义) 2.在创建的项目csproj项目文件中,确认是否存在运行时标识符,或将其添加到包含目标框架的 <PropertyGroup> 中   <PropertyGroup>   <TargetFramework>netcoreapp2.0</TargetFramework>   <RuntimeIdentifier>…
前面也有说到,我学习Linux 主要因为要学习一下部署.NET CORE项目到Linux 系统,这里就记录一下部署的详细步骤吧. 主要需要安装以下几个工具 1..NET CORE SDK 2.Jexus 3.supervisord 一.安装.NET CORE SDK 1.注册Microsoft产品Feed (直接复制以下命令即可) ①.sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc ②.sudo sh -c…
首篇笔记,多多关照.方便回忆和给新手指导,大神绕道 首先在Linux系统部署.net Core项目首先准备一个Linux系统的服务器,百度云,阿里云都行. 1.net core 部署在Linux系统上运行的环境搭建总结 指导连接:https://www.cnblogs.com/hzzxq/archive/2018/11/13/9952341.html 2.发布项目到Linux 我这边采用的是FTP传入到Linux系统 1.在服务器home下面创建一个文件夹(文件名随意),将编译的文件发布到改文件…
这一篇实例记录一次用Centos7创建并部署.net core项目的过程,希望能帮到用到的小伙伴. Kestrel 是 ASP.NET Core 项目模板中包括的默认 Web 服务器,Kestrel可以用作边缘服务器,同时Kestrel也可以做反向代理配置 一.创建并运行.net core MVC项目 1.用命令创建一个.net core MVC项目(前提是安装了.net core SDK) dotnet new mvc -n "Test"       (-n参数是指定项目的名称) 2…
1.安装AspNetCoreModule模块 与ASP.NET时代不同,ASP.NET Core不再是由IIS工作进程(w3wp.exe)托管,而是使用自托管Web服务器(Kestrel)运行,中间最重要的角色便是AspNetCoreModule,它是其中一个的IIS模块,基于这个模块,我们才可以和ASP.NET一样用IIS操作ASP.NET Core站点. 首先,确定我们是否原则AspNetCoreModule模块,打开IIS=>点击一个网站=>模块: 我这里显示没有安装: AspNetCo…
原文: https://github.com/zeusro/MarkdownBlog/blob/master/2018/2018-01-17-01.md 发布到ASP.NET CORE项目到 Windows server 2012 装软件 .NET Core Windows Server 托管捆绑包 ASP.NET Core 模块是一个 IIS 7.5+ 模块,它负责 ASP.NET Core HTTP 侦听器的进程管理,并将请求代理到它所管理的进程. 目前,为 IIS 安装 ASP.NET C…
原文:Creating Windows Services In .NET Core – Part 1 – The "Microsoft" Way 作者:Dotnet Core Tutorials 译者:Lamond Lu 译文:使用.NET Core中创建Windows服务(一) - 使用官方推荐方式 创建Windows服务来运行批处理任务或者运行后台任务,是一种非常常见的模式,但是由于云服务(Amazon Lambda, Azure WebJobs以及Azure Functions)…
NSSM 官网http://www.nssm.cc/,下载地址http://www.nssm.cc/download 简单点理解就是NSSM可以把一些exe程序封装成Windows服务,然后exe程序就像服务一样运行.而且NSSM功能强大,运行更简单,界面化傻瓜化处理方式. 下载NSSM,使用命令窗口至NSSM目录中找到nssm.exe所在的目录,然后运行nssm install,然后会弹框,选择相应的文件和文件夹. Path:dotnet所在的目录,一般默认是在C:\Program Files…
发布ASP.NET Core项目 和普通的项目发布一样,将项目发布到目标文件夹中 构建Dockerfile文件 在目标文件根目录新建Dockerfile文件(没有后缀) FROM microsoft/dotnet//基于'microsoft/dotnet' 来构建镜像 COPY . /app //拷贝项目文件夹中的所有文件到docker容器中的app文件夹 这里是两个参数 WORKDIR /app //设置工作目录为 '/app' 文件夹,即容器启动默认的文件夹 EXPOSE 80 //设置Do…
此文源于前公司在迁移项目到.NET Core的过程中,希望使用Generic Host来管理定时任务程序时,没法部署到Windows服务的问题,而且官方也没给出解决方案,只能关注一下官方issue #809 等他们方解决了. 官方文档只提供了一个<在 Windows 服务中托管 ASP.NET Core>的方案,可以使用Microsoft.AspNetCore.Hosting.WindowsServices类库来把Web应用部署为Windows服务.但是ASP.NET Core虽然是控制台程序…
使用NSSM把.Net Core部署至 Windows 服务   为什么部署至Windows Services 在很多情况下,很少会把.Net Core项目部署至Windows服务中,特别是Asp.net Core就更少了.一般情况下,Asp.net Core会部署至linux服务器,或者部署至Windows的IIS中.但也不排除会有Asp.net Core部署至Windows 服务中的情况,比如Windows服务器并没有安装IIS,或者Asp.net Core中存在一些定时任务,需要实时运行,…
1.新建.Net Core控制台程序,添加新建项Windows服务: NuGet引用 System.ServiceProcess.ServiceController,然后修改Progran.cs: class Program { static void Main(string[] args) { ServiceBase[] services = new ServiceBase[] { new WinService() }; ServiceBase.Run(services); } } 发布设置部…
Jexus Jexus 即 Jexus Web Server,简称JWS,是Linux平台上 的一款ASP.NET WEB服务器.它是 Linux.Unix.FreeBSD 等非Windows系统架设 ASP.NET WEB 服务器的核心程序. 将HTTP自宿主应用程序(如Asp.net Core应用程序.Node.js应用程序等)统一纳入Jexus的工作进程序列进行管控(启动.停止.重启.崩溃后自动恢复等管理.监控功能),为Asp.Net Core应用程序进入企业化生产环境提供了强有力的平台保…
前提:本地配置好Docker环境1.构建Net Core镜像 docker pull microsoft/dotnet 2.新建一个DockerFile文件并填充内容 #基于 `microsoft/dotnet:-core` 来构建我们的镜像 FROM microsoft/dotnet:-core #拷贝项目publish文件夹中的所有文件到 docker容器中的publish文件夹中 COPY . /publish #注意空格 #设置工作目录为 `/publish` 文件夹,即容器启动默认的文…
整个晚上脑子都有点呆滞,想起申请注册好的博客还从来都不曾打理,上来添添生机.从哪里讲起呢,去年有那么一段时间整个人就陷在域里拔不出来,于是整理了一些文档,害怕自己糊里糊涂的脑子将这些东西会在一觉醒来全然忘光,是的,写是最好的印记. 书归正传喽,从安装和部署域开始吧,小主初学,若有不对之处,欢迎批评指正. windows server 2008 R2域中的第一台DC部署方法: 1.设置IP地址为静态IP地址 2.IP地址指向本地IP地址,DC域服务器的DNS服务器地址也同时指向本地IP. 3.选择…
public static IWebHostBuilder UseContentRootAsEnv(this IWebHostBuilder hostBuilder) { bool IsWindowsService = false; Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows)) { using (var…
NSSM部署Windows服务 1 准备工作 在Windows平台部署Asp.net core应用程序一般采用IIS,但是如果我们的net core应用执行的是定时任务,需要开机自启,稳定运行的话,使用NSSM将其部署为Winodows服务是一种不错的选择.NSSM官网地址:http://www.nssm.cc/. 我们知道netcore应用本质都是Console应用程序,所以这里我们就以一个控制台应用为例演示NSSM部署过程.新建一个控制台项目,项目名为HelloWorld,代码如下: cla…
0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 此文阅读目录: 1.闲聊 2.部署流程介绍 3.部署Harbor仓库 4.jenkins-slave镜像搭建 5.部署jenkins 6.jenkins+gitlab挂钩 7.k8s部署asp.net core项目 一.闲聊 现在基本上是隔几天写一篇文章,还是不够勤奋,努力把自己打造成勤奋的人,把工作上面所用到的技术点分享给…
目录 1.前言 2.环境和软件的准备 3.创建.NET Core API项目 4.VMware Workstation虚拟机及Centos 7安装 5.Centos 7安装.NET Core环境 6.发布.NET Core项目到Linux 7.启动和停止.NET Core项目 8.为.NET Core项目创建Supervisor进程守护监控 9.防火墙配置,允许外网或局域网访问.NET Core站点 10.总结 1.引言 文章记录着部署.NET Core项目到Linux的过程,只是使用了Kest…
上一篇文章中我给大家讲述了五种部署ASP.NET Core网站的方法,其中有一种方式是通过Windows服务来进行部署,这样既可以做到开启自启动,又不会因为iis的反向代理而损失部分性能.但是美中不足的是需要借助第三方软件nssm来进行,那么有没有更好并且优雅的方式来进行ASP.NET Core网站的Windows服务方式部署呢?答案是肯定的! 作者:依乐祝 原文链接:https://www.cnblogs.com/yilezhu/p/10380887.html 今天这篇文章我会利用番茄工作法来…
前言 Net core 项目部门在Windows有很多种方式,大致有以下几种, dotnet 命令, iis(windowshosts), 一些开源的应用容器(docker ) 基于一些exe 程序,微软官网上案例 Nssm 搭建windows服务 其中优劣对比在这不进行累述.我今天是把它搭建到windows服务上的,这种方式对于我们现有dotnet来说相对美观(一个黑框框,一个看不到),电脑重启可以自动重启. 1.实现 1.1.下载nssm 官网http://www.nssm.cc/,下载地址…
1.安装.Net Core SDK 1.1. 在安装.NET之前,您需要注册Microsoft密钥,注册产品存储库并安装所需的依赖项.这只需要每台机器完成一次. sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm 1.2 .更新可用于安装的产品,然后安装.NET SDK. sudo yum update sudo yum install dotnet-sdk-2.2 1.3.…
前言 以前总结过一篇基于Quartz+Topshelf+.netcore实现定时任务Windows服务 https://www.cnblogs.com/gt1987/p/11806053.html.回顾起来发现有点野路子的感觉,没有使用.netcore推荐的基于 HostedService 的方式,也没有体现.net core跨平台的风格.于是重新写了一个Sample. Work Service 首先搭建项目框架. 版本 .netcore3.1 建立一个Console程序项目模板,修改 proj…
1. 先在本地比如~/Downloads下建立MVC项目 2. 生成mvc使用的ssl证书
 2.1. 生成.key文件
 openssl genrsa -des3 -out server.key 2048 中间会提示输入密码(重复输入两次),要记住这个密码 这时会在目录下生成server.key文件. 2.2. 生成.crt文件 openssl req -new -x509 -key server.key -out server.crt -days 3650 会提示输入server.key的密…
在之前一篇博客<以Windows服务方式运行ASP.NET Core程序>中我讲述了如何把ASP.NET Core程序作为Windows服务运行的方法,而今,我们又遇到了新的问题,那就是:我们的控制台程序,也就是普通的.NET Core程序(而不是ASP.NET Core程序)如何以服务的方式运行呢? 这个问题我们在.NET Core之前早就遇到过,那是是.NET Framework的时代(其实距今也没多远啦),我们是用一个第三方的组件——Topshelf,来解决这个问题的,Topshelf的…
以Windows服务方式运行.NET Core程序 原作者blog:https://www.cnblogs.com/guogangj/p/10093102.html 里面使用了NSSM 工具 但是自己试了下自己公司的产品不行 还有一篇写 aspnet core的 没有代码 暂时还没有测试. 在之前一篇博客<以Windows服务方式运行ASP.NET Core程序>中我讲述了如何把ASP.NET Core程序作为Windows服务运行的方法,而今,我们又遇到了新的问题,那就是:我们的控制台程序,…
连表查询都用Left Join吧   最近看同事的代码,SQL连表查询的时候很多时候用的是Inner Join,而我觉得对我们的业务而言,99.9%都应该使用Left Join(还有0.1%我不知道在哪),我用最简单的方式来描述这两者的区别,直接看图(有点草啊): 我的做法是永远把查询主体放在左边,然后右边挨个连上要附加的信息,有则连上,没有则留null,这样思路是最清晰的. Inner Join跟这个的区别是如果附加表找不到对应ID,那么这行记录就不会出现,我在图中用红色字体说明了这个区别.(…
原文:Creating Windows Services In .NET Core – Part 2 – The "Topshelf" Way 作者:Dotnet Core Tutorials 译者:Lamond Lu 译文:使用.NET Core创建Windows服务(二) - 使用Topshelf方式 使用.NET Core创建Windows服务 使用微软推荐方式 使用Topshelf方式 在前一篇文章中,我给大家介绍了,如何基于微软推荐方式使用.NET Core创建Windows…