上篇我们讲到consul的概念,以及在WIN下如何使用:http://www.cnblogs.com/szlblog/p/9162557.html

步骤如下:

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

    如下图所示

    

  4.2、安装.net SDK            

    执行命令如下:

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

    如下图所示

    

  4.3、查看是否安装成功:       

    执行命令如下:

    # dotnet –version

    如下图所示

    

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

   操作步骤如下:

  5.1、把项目生成发布:

     

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

    

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

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

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

    # mkdir ~/AspNetCore

    开始上传:如下图

    

  5.5、执行命令解压:

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

    如下图所示:

     

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

    如下图所示:

    

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

    

6、在Linux下安装Consul 

  6.1、下载Linux版本的consul

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

   

  6.2、发送到Linux中进行安装

   1):这是第一种方法:

     

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

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

     

  6.3、解压文件:命令解压

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

    如图所示

    

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

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

    如图:

     

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

     

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

    结果如图所示:

     

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

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

    命令行如下:

    

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

     

7、安装配置守护进程: 

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

  7.1、安装 Supervisor 

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

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

    执行命令进行下载:  Supervisor 

    yum install python-setuptools

    

  7.2、进行安装

    执行命令:安装

    命令:easy_install supervisor

    

  7.3、查看 Supervisor 配置文件

    输入命令:echo_supervisord_conf

    结果如下:

    

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

    

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

    命令如下:mkdir /etc/supervisor

    

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

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

    如下图所示

    

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

    注意 不要加 ; 空格

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

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

    内容如下图所示:

    

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

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

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

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

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

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

    

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

   

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

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

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

    

    方法二:

    #停止: sudo service supervisor stop

    #启动:sudo service supervisor start

  7.8、运行结果:

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

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

    

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

    

  有关 supervisorctl的一些简单命令:

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

    supervisorctl start project:启动某个进程

    supervisorctl restart project:重启某个进程

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

    supervisorctl stop all:停止全部进程

    supervisorctl reload:重新载入配置文件

    supervisorctl update:修改某个进程:

8、安装Negix

  

  8.1、首先我们需要安装PRCE

  意义:PCRE 作用是让 Nginx 支持 Rewrite 功能,因为nginx rewrite依赖于PCRE库

执行命令下载:

wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz

结果如下:

    

    

  在SRC文件夹下 输入命令 ll 进行查看我们可以看到下载结果

  执行解压命令:tar zxvf pcre-8.35.tar.gz  解压如下图所示

  

  8.2、进行PCRE安装:

  在我们解压的时候,可以看到我们的解压目录是:pcre-8.35 切换到该目录 下进行安装:具体步骤如下

  1)、执行命令切换目录:cd ./pcre-8.35

  注意:当你找不到文件路径的时候使用 find -name 文件名称进行查找

  结果如下:

  

  

  2)、执行安装命令进行安装:

  命令:./configure

  结果如下

  

     执行命令:make && make install

命令完成后,PCRE完成安装

查看版本命令:pcre-config --version

8.3、Negix下载安装:

  1)、执行命令下载:

  wget http://nginx.org/download/nginx-1.6.2.tar.gz

 这个版本想换掉就更改一下版本

  

  2)、执行命令解压:

  命令:tar zxvf nginx-1.6.2.tar.gz

结果如下:

  

  3)、进行安装

    执行命令:

    ./configure

    命令最后会输出我们Nginx的路径,日志等文件信息

    

  然后执行:make

  最后是:make install

查看版本:/usr/local/nginx/sbin/nginx -v

  

  

  4)、启动的时候,注意切换到我们的Nginx目录下

   输入命令:cd /usr/local/nginx/sbin

  输入启动命令: ./nginx

  如图所示:

    

这里配置文件所在目录,请看第 4)、小节点进行安装时的输出(截图中有)

  5)、如何查看我们的安装结果

     命令行运行:curl http://127.0.0.1 结果如下

    

    在浏览器中查看:

    

  6)、有关Nginx的配置

    命令打开配置文件:

    

  

    具体配置信息如下:

我们把cunsul的注册到配置中

server {

listen      0.0.0.0:10000;

server_name  szlconsul.com;

location / {

proxy_pass http://localhost:8500;

proxy_http_version 1.1;

proxy_set_header Upgrade $http_upgrade;

proxy_set_header Connection keep-alive;

proxy_set_header Host $host;

proxy_cache_bypass $http_upgrade;

}

  8)、重新加载Nginx配置

    切换到配置目录下

    执行命令:.nginx -s reload 重新加载

    执行命令:.nginx -s reopen 重新打开

    执行命令:.nginx -s stop   关闭

    

    运行结果:如下图所示;

    

9、开放centos 的端口外部访问:

  我们要保证虚机的端口是可以被外部访问的,因为Linux系统对我来说很陌生,在使用的过程中,都是要学,有时候一个命令我就要查询很多的资料,中间收货确实不小,建议每一个初接触Linux的千万不要别人给个命令咱逮住就用,万一命令是删除什么的就不好了,  保持谨慎。

  在张善友老师整理 文档中我们也可以看出大佬对命令的态度:张老师整理文档地址

  Github: https://github.com/geffzhang/opendotnet

  1.1、:关闭firewall 防火墙:(在7.0以后都是firewall)

   为什么关闭firewall防火墙

  1)、在使用Docker时,启用centos7默认的firewall,启动端口映射时,防火墙规则不生效。docker默认使用了iptables防火墙机制。所以需要关闭firewall使用iptables解决

  2)、还有的人说是因为习惯,之前centos5  centos6使用iptables 对防火墙相关规则习惯了iptables,亦或者其他的第三方软件使用防火强规则也是iptables的。

  3)、也可能是firewall没用习惯。

  4)、使用命令:

    1)、关闭firewall防火墙:

    命令:systemctl stop firewalld.service 关闭防火墙

    命令:systemctl disable firewalld.service关闭防火墙开机启动

    2)、安装iptables防火墙:

    命令:yum install iptables  安装

      命令:vim /etc/sysconfig/iptables

    添加配置信息:

    

    

    命令:service iptables restart 重新启动iptables 防火墙

    命令:systemctl enable iptables.service 设置防火墙开机自启

    外部运行:结果如下:

    

            有不足之处 希望大家指出相互学习,

                                     本文原创:转载请注明出处 谢谢!

CentOS 7.4 下 如何部署 AspNetCore 结合 consul的更多相关文章

  1. CentOS 7.4 下安装部署Nagios监控系统详细攻略(三)

    Nagios是一个流行的电脑系统和网络监控程序,它检测主机和服务,当异常发生和解除时能提醒用户.它是基于GPLv2开发的开源软件,可免费获得及使用. nagios工作原理 nagios的功能是监控服务 ...

  2. centos 7环境下安装部署zookeeper

    近一直在看zookeeper的知识,有所收获,打算写些一些关于zookeeper的博客,也当做是自己的复习和笔记. 在上一篇 博客中简单地介绍了centos 7 下如何安装jdk,这一篇将介绍如何在c ...

  3. CentOS 7.x下安装部署MySQL 8.0实施手册

    MySQL 8 正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大量的改进和更快的性能! 一.  Mysql8.0版本相比之前版本的一些特性 1) ...

  4. CentOS 5.5下搭建部署独立SVN服务器全程详解

    SVN服务器有2种运行方式:1.独立服务器 (例如:svn://xxx.com/xxx):2.借助apache   (例如:http://svn.xxx.com/xxx):为了不依赖apache,我选 ...

  5. Linux Centos7.x下安装部署VNC的实操详述

    VNC (Virtual Network Console)是虚拟网络控制台的缩写.它 是一款优秀的远程控制工具软件,由著名的AT&T的欧洲研究实验室开发的.VNC 是在基于 UNIX和 Lin ...

  6. Linux(CentOS 6.7)下配置Mono和Jexus并且部署ASP.NET MVC3、4、5和WebApi(跨平台)

    1.开篇说明 a. 首先我在写这篇博客之前,已经在自己本地配置了mono和jexus并且成功部署了asp.net mvc项目,我也是依赖于在网上查找的各种资料来配置环境并且部署项目的,而其在网上也已有 ...

  7. Linux(CentOS 6.5)下配置Mono和Jexus并且部署ASP.NET MVC5

    1.开篇说明 a. 首先我在写这篇博客之前,已经在自己本地配置了mono和jexus并且成功部署了asp.net mvc项目,我也是依赖于在网上查找的各种资料来配置环境并且部署项目的,而其在网上也已有 ...

  8. CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡【转】

    CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡   一.简介 VS/NAT原理图: 二.系统环境 实验拓扑: 系统平台:CentOS 6.3 Kernel:2 ...

  9. 【简书】在阿里云自带的CentOS + LAMP环境下部署一个Laravel项目

    在阿里云自带的CentOS + LAMP环境下部署一个Laravel项目 作者 DonnieZero 关注 2017.07.29 22:02* 字数 2218 阅读 5556评论 3喜欢 1赞赏 1 ...

随机推荐

  1. Postman----presets与环境变量的联合使用

    一.环境 在开发不同阶段,可能存在不同的环境(对我碰到的就是服务器地址/api版本/header信息等不一样),比如 debug环境和release环境,每次切换环境测试的时候都得重新配置url信息, ...

  2. 如何使用命令行编译和运行java文件

    相信大家现在一般都在使用IDE环境来开发运行java文件,但我觉得可以在命令行里面简单运行java文件,技多不压身. 接下来我来说一下编译和运行java文件: 第一步,首先下一个入门程序(注意:一定要 ...

  3. maven创建web报错Cannot read lifecycle mapping metadata for artifact org.apache.maven.plugins:maven-compiler-plugin:maven-compiler-plugin:3.5.1:runtime Cause: error in opening zip file

    Cannot read lifecycle mapping metadata for artifact org.apache.maven.plugins:maven-compiler-plugin:m ...

  4. set命令详解

    我们依然是围绕这几个话题展开学习: 1.什么是set命令? 2.为什么要用set命令? 3.怎样使用set命令? 1.什么是set命令? ♦ set命令作用主要是显示系统中已经存在的shell变量,以 ...

  5. 线性表概述及单链表的Java实现

    一.线性表概述 线性表是指一组数据元素之间具有线性关系的元素序列,它表现为:除第一个元素没有直接前驱元素.最后一个元素没有直接后继元素外,其余所有元素都有且仅有一个直接前驱元素和直接后继元素. 根据存 ...

  6. 简单又实用的分享!SharePoint母版页引用(实战)

    分享人:广州华软 极简 一. 前言 此SharePoint 版本为2013,请注意版本号.此文以图文形式,描述了根网站及子网站引用母版页,需要注意的点已用图文形式以标明. 本文适用于初学者. 二. 目 ...

  7. 《前端之路》之 webpack 4.0+ 的应用构建

    目录 一.版本 二.webpack 的主体概念 2-1.入口 2-1-1.单页面入口 2-1-2.多页面应用的入口 2-2.输出 2-3.loader 2-4.plugins 三.如何使用 3-1 关 ...

  8. bash语法

    国际惯例打印hello world   echo "hello world"   该程序运行结果: hello world 1.变量:   a=;b="hello wor ...

  9. OSPF 高级实验

    一.环境准备 1. 软件:GNS3 2. 路由:c7200 二.实验操作 实验要求: 1.理解 OSPF 虚链路原理及何时需要使用虚链路. 2.掌握 OSPF 虚链路配置方法. 3.掌握 OSPF 的 ...

  10. 【转载】通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core?

    本文转载自:http://www.cnblogs.com/1996V/p/9037603.html [尊重作者原创,转载说明出处!感谢作者“小曾看世界”分享! ] 什么是.NET?什么是.NET Fr ...