CentOS 7.4 下 如何部署 AspNetCore 结合 consul

上篇我们讲到consul的概念,以及在WIN下如何使用: 在Windows 下如何使用 AspNetCore Api 和 consul

步骤如下:

1、安装虚拟机VM 

2、下载安装 CentOS 7.4(地址就不提供了)

这是安装示例: VM虚拟机安装CentOS 示例  https://www.jb51.net/article/108088.htm

 

3、配置网络环境(确保网络通)

4、下载安装dotnet 运行环境

  4.1、注册Microsoft密钥、注册产品存储库和安装所需的依赖项:每个机器执行一次

    执行命令如下:

    # sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm

    如下图所示

    640?wx_fmt=png

  4.2、安装.net SDK            

    执行命令如下:

    # sudo yum install dotnet-sdk-2.1  你想用哪个版本就换成哪个版本

    如下图所示

    640?wx_fmt=png

  4.3、查看是否安装成功:       

    执行命令如下:

    # dotnet –version

    如下图所示

    640?wx_fmt=png

5、把我们在windows下创建的项目生成发布上传到Linux

   操作步骤如下:

  5.1、把项目生成发布:

     640?wx_fmt=png

  5.2、找到发布的文件夹打包成ZIP格式的压缩文件

    640?wx_fmt=png

  5.3、下载安装一个工具(哪种都行我用的是Xftp 5)用来上传文件到Linux中

  5.4、进行项目发布压缩包上传:        

    上传之前:我先使用命令创建了一个文件夹:命令如下:  

    # mkdir ~/AspNetCore

    开始上传:如下图

    640?wx_fmt=png

  5.5、执行命令解压:

    解压命令:# unzip /root/AspNetCore/MyFrameworkCore.zip

    如下图所示:

     640?wx_fmt=png

  5.6、在当前解压的文件夹下运行项目

    如下图所示:

    640?wx_fmt=png

    5.7我们来运行一下查看结果如下:

    640?wx_fmt=png

6、在Linux下安装Consul 

  6.1下载Linux版本的consul

    上篇 文章开始时我们提供过地址:

   640?wx_fmt=png

  6.2、发送到Linux中进行安装

   1):这是第一种方法:

     640?wx_fmt=png

  2):第二种方法:命令下载:

    执行命令:Wget https://releases.hashicorp.com/consul/1.1.0/consul_1.1.0_linux_amd64.zip

     640?wx_fmt=png

  6.3、解压文件:命令解压

    执行命令:# unzip consul_1.1.0_linux_amd64.zip

    如图所示

    640?wx_fmt=png

  6.4、运行启动consul :命令运行

    执行命令:  ./consul  可以查看版本

    如图:

     640?wx_fmt=png

    执行命令: ./consul agent -dev 开发者运行

     640?wx_fmt=png

   6.5、页面访问:地址为 127.0.0.1:8500

    结果如图所示:

     640?wx_fmt=png

   6.6、我们通过命令行在运行项目注册服务

    因为我们的端口是通过命令行去读取的所以需要我们 在命令行中需要输入相关命令

    命令行如下:

    640?wx_fmt=png

    注意如果我们在运行项目的时候一定要启动Consul

     640?wx_fmt=png

7、安装配置守护进程: 

    安装守护进程的意义:为了在我们退出命令界面的时候使我们的网站继续运行,就比如我们在VS中运行项目一样,当VS停止运行的时候,项目也就无法运行了

  7.1、安装 Supervisor 

    官方文档了解更多:http://supervisord.org/

    为什么选择用这个去做:因为微软官方推荐

    执行命令进行下载:  Supervisor 

    yum install python-setuptools

    640?wx_fmt=png

  7.2、进行安装

    执行命令:安装

    命令:easy_install supervisor

    640?wx_fmt=png

  7.3、查看 Supervisor 配置文件

    输入命令:echo_supervisord_conf

    结果如下:

    640?wx_fmt=png

     我们可以在终端的输出的信息中最后一行看到如下图所示:

    640?wx_fmt=png

    在这句话是我们需要替换一下新增也行:目的是为了方便读取我们的配置文件:首先我们创建一个文件夹:移动  echo_supervisord_conf 文件

    命令如下:mkdir /etc/supervisor

    640?wx_fmt=png

  7.4、移动命令文件到新建文件夹中

    执行命令:echo_supervisord_conf > /etc/supervisor/supervisord.conf

    如下图所示

    640?wx_fmt=png

  7.5、新增配置:在/etc/supervisor/supervisord.conf中

    注意 不要加 ; 空格

    添加内容: [include]files=conf.d/*.conf

    执行命令:vim /etc/supervisor/supervisord.conf

    内容如下图所示:

    640?wx_fmt=png

  7.6、新建配置文件添加配置信息

    新建文件夹命令:mkdir conf.d

    切换到文件夹下:cd conf.d

    新建配置文件命令:touch AspNetCore.conf

    打开编译配置文件命令:vim AspNetCore.conf

    如图所示:新加配置信息:

    640?wx_fmt=png

    注释如下:注释一定要去掉

    640?wx_fmt=png

  7.7、重新加载配置信息:/etc/supervisor/supervisord.conf

    方法一:sudo supervisorctl shutdown && sudo supervisord -c /etc/supervisor/supervisord.conf

    这里启动的时候已经在运行了我们的私有配置:因为配置文件中我们加入了  [include]files=conf.d/*.conf

    640?wx_fmt=png

    方法二:

    #停止: sudo service supervisor stop

    #启动:sudo service supervisor start

  7.8、运行结果:

    当 supervisor重新启动的时候我们的配置已经生效了

    1)、首先我们访问一下我们通过配置文件启动的站点:

    640?wx_fmt=png

    2)、在查看我们的consul中是注册了服务

    640?wx_fmt=png

 

有关 supervisorctl的一些简单命令:

  supervisorctl stop project:停止某一个进程(programxxx)

  supervisorctl start project:启动某个进程

  supervisorctl restart project:重启某个进程

  supervisorctl stop groupworker:重启所有属于名为groupworker的进程

  supervisorctl stop all:停止全部进程

  supervisorctl reload:重新载入配置文件

  supervisorctl update:修改某个进程:

相关文章: 

  • .NET Core微服务之基于Consul实现服务治理

  • .NET Core微服务之基于Consul实现服务治理(续)

  • Ocelot + Consul实践

  • 青客宝团队Consul内部分享ppt

  • 搭建consul 集群

  • Redola.Rpc 集成 Consul 服务发现

  • Consul 服务注册与服务发现

  • 在Windows 下如何使用 AspNetCore Api 和 consul

原文地址: http://www.cnblogs.com/szlblog/p/9164419.html


.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com

640?wx_fmt=jpeg

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

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

相关文章

【SPFA】最优贸易(luogu 1073)

最优贸易 luogu 1073 题目大意: 有n个城市和m条线路连接着这些城市(当编号为1时是有向,2时是无向),从1城市出发到n城市,每个城市都有固定的水晶球价格(进价和售价一样)&#xff0…

Razor Page Library:开发独立通用RPL(内嵌wwwroot资源文件夹)

Demo路径:https://github.com/yanshengjie/RPL.Demo1. IntroductionRazor Page Library 是ASP.NET Core 2.1引入的新类库项目,属于新特性之一,用于创建通用页面公用类库。也就意味着可以将多个Web项目中通用的Web页面提取出来,封装…

Problem H Rock Paper Scissors,FFT

题目 题目链接 题意 给出两段石头剪刀布的顺序SS和T" role="presentation" style="position: relative;">TT,其中TT要短一些,现在让你把T" role="presentation" style="position: relative;">TT往SS的…

.NET Core微服务之基于Ocelot实现API网关服务

一、啥是API网关?API 网关一般放到微服务的最前端,并且要让API 网关变成由应用所发起的每个请求的入口。这样就可以明显的简化客户端实现和微服务应用程序之间的沟通方式。以前的话,客户端不得不去请求微服务A(假设为Customers&am…

[译]RabbitMQ教程C#版 - 发布订阅

先决条件本教程假定RabbitMQ已经安装,并运行在localhost标准端口(5672)。如果你使用不同的主机、端口或证书,则需要调整连接设置。从哪里获得帮助如果您在阅读本教程时遇到困难,可以通过邮件列表联系我们。1.发布/订阅…

用ASP.NET Core 2.1 建立规范的 REST API -- 缓存和并发

本文所需的一些预备知识可以看这里: 用ASP.NET Core 2.0 建立规范的 REST API -- 预备知识 和 用ASP.NET Core 2.0 建立规范的 REST API -- 预备知识 (2) 准备项目建立Richardson成熟度2级的POST、GET、PUT、PATCH、DELETE的RESTful API请看这里:用ASP.NET Core …

2017 SEERC Divide and Conquer 树上差分

题目 题目大意:给出两颗树的复合图(即这张图是由两颗树拼起来的),询问最小割掉多少条边,可以使得图不联通,并输出方案数。 分析 我觉得这是一道很难的题目,因为比较难想,前提结论比较多。 首先我们需要…

青蛙跳荷叶

青蛙跳荷叶 题目大意: 有n个点,从1开始到跳完这些点,且每次的距离不能相等,一个点不能到多次 原题: 题目描述 从前,有一个小青蛙决定去荷叶上练习跳跃.现在有n个荷叶排成一排,小青蛙一开始…

基于 Consul 实现 MagicOnion(GRpc) 服务注册与发现

0.简介0.1 什么是 ConsulConsul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置。这里所谓的服务,不仅仅包括常用的 Api 这些服务,也包括软件开发过程当中所需要的诸如 Rpc、Redis、Mysql 等需要调用的资源。简而言之 Con…

【DFS】排排坐

排排坐 题目大意: 有n个方块,有一些是黑色,有一些是白色,可以点击一个方块使它和它旁边的方块反转颜色(黑变白,白变黑),问最少要点多少次才能将方块 们 变成目标的方块们&#xff…

用ASP.NET Core 2.1 建立规范的 REST API -- 保护API和其它

预备知识: 用ASP.NET Core 2.0 建立规范的 REST API -- 预备知识 用ASP.NET Core 2.0 建立规范的 REST API -- 预备知识 (2) 准备项目建立成熟度2级的 API请看这里:用ASP.NET Core 2.0 建立规范的 REST API -- GET 和 POST, 用ASP.NET Core 2.0 建立规范的 REST AP…

华为资深工程师:码农很多,但程序员并不多......

“春节假期,与几位友人小聚,大家互道工作顺利、平安健康云云......期间一位驰骋商界多年的老友问:“你现在在华为做什么工作呀?”我很骄傲地说:”系统架构师“,可是他却愣了很久。但当我老婆在旁边补上一句“码农“时…

VS2017 15.8第二个预览版本提升了对CPU Profiling和F#的支持

VS2017 15.8第一个预览版本的特性包括对ARM64构建的支持、ASP.NET Core对Docker的支持以及重新引入LibMan。在15.8的第二个预览版本中,微软发布了一个新Google Android模拟器的预览功能,它能够与Hyper-V兼容。这样的话,最新的Android模拟器就…

ASP.NET Core Razor生成Html静态文件

一、前言最近做项目的时候,使用Util进行开发,使用Razor写前端页面。初次使用感觉还是不大习惯,之前都是前后端分离的方式开发的,但是使用Util封装后的Angular后,感觉开发效率还是杠杠滴。二、问题在发布代码的时候&…

一文看懂.NET的各种变体

曾几何时,我们只有一个.NET,叫作.NET Framework。如果想要开发.NET应用程序,只要使用.NET Framework即可,非常简单。几年之后,出现了.NET变种的寒武纪大爆发(我们称之为“.NET大爆炸”)&#xf…

【最短路】【Floyed】医院设置(ssl 1614)

医院设置 ssl 1614 题目大意: 有n个点,在一个点上安医院,使这个点到其他点的最短路之和最小 原题: Description 设有一棵二叉树(如右图)。其中,圈中的数字表示结点中居民的人口。圈边上数…

拓展 NLog 优雅的输送日志到 Logstash

在上上篇博客通过对aspnetcore启动前配置做了一些更改,以及对nlog进行了自定义字段,可以把请求记录输送到mysql,正式情况可能不会这么部署。因为近期也在学习elk,所以就打算做一个实例,结合nlog把日志输送到logstash&a…

曼哈顿距离与切比雪夫距离的转化及prufer序列

目录 曼哈顿距离与切比雪夫距离的相互转化prufer序列 1. 曼哈顿距离 与 切比雪夫距离 的相互转化 曼哈顿距离 |x1−x2||y1−y2|max(x1−x2y1−y2,x1−x2−y1y2,−x1x2y1−y2,−x1x2−y1y2)|x1−x2||y1−y2|max(x1−x2y1−y2,x1−x2−y1y2,−x1x2y1−y2,−x1x2−y1y2)|x_1 - x…

[译]如何在.NET Core中使用System.Drawing?

你大概知道System.Drawing,它是一个执行图形相关任务的流行的API,同时它也不属于.NET Core的一部分。最初是把.NET Core作为云端框架设计的,它不包含非云端相关API。另一方面,.NET Core是跨平台框架,它不包含任何操作系…

关于Visual Studio 2019的前期详情

近日,来自微软公司的 John Montgomery 正式宣布,Visual Studio 2019已进入开发阶段。Montgomery 表示,之所以选择在这个时间点公开这个消息,是因为微软准备在 GitHub 上公开可见的项目(包括 .NET 和 Roslyn&#xff09…