欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

CentOS 7.4 下 如何部署 AspNetCore 结合 consul

程序员文章站 2022-05-01 11:25:31
上篇我们讲到consul的概念,以及在WIN下如何使用:http://www.cnblogs.com/szlblog/p/9162557.html 步骤如下: 1、安装虚拟机VM 2、下载安装 CentOS 7.4(地址就不提供了) 这是安装示例: VM虚拟机安装CentOS 示例 https:// ......

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

步骤如下:

1、安装虚拟机VM

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

    这是安装示例: VM虚拟机安装CentOS 示例 

 

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

4、下载安装dotnet 运行环境

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

    执行命令如下:

    # sudo rpm -Uvh 

    如下图所示

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

  4.2、安装.net SDK            

    执行命令如下:

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

    如下图所示

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

  4.3、查看是否安装成功:       

    执行命令如下:

    # dotnet –version

    如下图所示

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

   操作步骤如下:

  5.1把项目生成发布:

     CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

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

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

    # mkdir ~/AspNetCore

    开始上传:如下图

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

  5.5、执行命令解压:

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

    如下图所示:

     CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

    如下图所示:

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

6、在Linux下安装Consul 

  6.1下载Linux版本的consul

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

   CentOS 7.4 下 如何部署 AspNetCore  结合 consul

  6.2、发送到Linux中进行安装

   1):这是第一种方法:

     CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

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

     CentOS 7.4 下 如何部署 AspNetCore  结合 consul

  6.3、解压文件:命令解压

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

    如图所示

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

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

    如图:

     CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

     CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

    结果如图所示:

     CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

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

    命令行如下:

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

     CentOS 7.4 下 如何部署 AspNetCore  结合 consul

7、安装配置守护进程: 

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

  7.1、安装 Supervisor 

    官方文档了解更多:

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

    执行命令进行下载:  Supervisor 

    yum install python-setuptools

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

  7.2、进行安装

    执行命令:安装

    命令:easy_install supervisor

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

  7.3、查看 Supervisor 配置文件

    输入命令:echo_supervisord_conf

    结果如下:

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

    命令如下:mkdir /etc/supervisor

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

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

    如下图所示

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

    注意 不要加 ; 空格

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

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

    内容如下图所示:

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

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

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

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

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

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

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

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

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

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

    方法二:

    #停止: sudo service supervisor stop

    #启动:sudo service supervisor start

  7.8、运行结果:

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

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

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

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

    CentOS 7.4 下 如何部署 AspNetCore  结合 consul

 

有关 supervisorctl的一些简单命令:

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

  supervisorctl start project:启动某个进程

  supervisorctl restart project:重启某个进程

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

  supervisorctl stop all:停止全部进程

  supervisorctl reload:重新载入配置文件

  supervisorctl update:修改某个进程:

 

 

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

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