CentOS 7.4 下 如何部署 AspNetCore 结合 consul

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

步骤以下:python

1、安装虚拟机VM

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

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

 

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

四、下载安装dotnet 运行环境

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

    执行命令以下:git

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

    以下图所示docker

    

  4.二、安装.net SDK            vim

    执行命令以下:windows

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

    以下图所示

    

  4.三、查看是否安装成功:       

    执行命令以下:

    # dotnet –version

    以下图所示

    

五、把咱们在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咱们来运行一下查看结果以下:

    

六、在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

     

七、安装配置守护进程: 

    安装守护进程的意义:为了在咱们退出命令界面的时候使咱们的网站继续运行,就好比咱们在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:修改某个进程:

 八、安装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.3Negix下载安装:

 

  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   关闭

    

    运行结果:以下图所示;

    

 

 

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

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

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

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

 

  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 设置防火墙开机自启

    外部运行:结果以下:

    

 

                   有不足之处 但愿你们指出相互学习,

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

相关文章
相关标签/搜索