专栏首页逸鹏说道安装和搭建基于netcore的demo

安装和搭建基于netcore的demo

系统CentOS安装:

  网上很多教程,很详细,我就不再赘述了。在安装过程中,需要注意的是设置时区、个人账户密码、root密码(一定要注意,否则后续很麻烦)、在首次启动时,需要接受许可。

NETCoreSDK安装:

  参考官方教程即可。https://www.microsoft.com/net/core#centos

安装nginx:

参看官方教程即可;https://www.nginx.com/resources/wiki/start/topics/tutorials/install/#

我是按照下面的方式安装的:

# 1、下载对应当前系统版本的nginx包(package),具体版本根据自己情况http://nginx.org/packages/
 wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
# 2、建立nginx的yum仓库
 rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm
# 3、下载并安装nginx
 yum install nginx
# 4、启动nginx服务
 systemctl start nginx
# 或者 service nginx start命令也可以

5、配置

默认的配置文件在 /etc/nginx 路径下,使用该配置已经可以正确地运行nginx;如需要自定义,修改其下的 nginx.conf 等文件即可。

6、测试

在浏览器地址栏中输入部署nginx环境的机器的IP,如果一切正常,应该能看到如下字样的内容。

==============

配置Nginx.conf,代理,位于etc/nginx/nginx.conf文件,主要是设置了server节点中的一些东西。别的东西还没动,如果涉及到多站点部署的话,一些配置还是需要修改的。

 
user  nginx;
worker_processes  1;


error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;


    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';


    access_log  /var/log/nginx/access.log  main;


    sendfile        on;
    #tcp_nopush     on;


    keepalive_timeout  65;


    #gzip  on;
#如果是多站点配置,需要启用这个配置,然后在conf.d文件夹下,创建多个配置文件即可。比如www.a.com.conf、www.b.com.conf
    #include /etc/nginx/conf.d/*.conf;


server {
    listen 80;


    #root /usr/share/nginx/html;
    #index index.html index.htm;


    # Make site accessible from http://localhost/
    server_name hwapp.netcore.cn;


    location / {
        proxy_pass http://localhost:5000;
        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;
 proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
}
配置好上面的nginx.conf后,检查一下是否正确。

[root@localhost /]# whereis nginx
nginx: /usr/sbin/nginx /etc/nginx /usr/share/nginx /usr/share/man/man3/nginx.3pm.gz /usr/share/man/man8/nginx.8.gz


# 检测配置是否有问题
[root@localhost /]# /usr/sbin/nginx -t
nginx: [emerg] invalid URL prefix in /etc/nginx/nginx.conf:49
nginx: configuration file /etc/nginx/nginx.conf test failed
[root@localhost /]# /usr/sbin/nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful


#重启nginx服务,
[root@localhost /]# sudo service nginx restart
Redirecting to /bin/systemctl restart nginx.service
[root@localhost /]# 
 
#或者使用reload
[root@localhost /]# /usr/sbin/nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@localhost /]# sudo nginx -s reload
[root@localhost /]#

遇到的问题:

2016/07/19 22:00:02 [crit] 60088#60088: *24 connect() to 127.0.0.1:5000 failed (13: Permission denied) while connecting to upstream, client: 192.168.74.129, server: localhost, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:5000/", host: "192.168.74.129"

经过一番检查搜索,应该是SeLinux的导致的。可以选择一些两种方式进行:

1、关闭SeLinux,可以查看以下文章:

  CentOS下查看SeLinux状态及关闭SeLinux:http://www.hpboys.com/824.html

2、执行下面的命令(我执行的是这个)

setsebool -P httpd_can_network_connect 1

项目发布:

参考各个命令使用以及runtimes的平台配置 http://www.cnblogs.com/shanyou/archive/2016/07/04/5636920.html

进入项目目录(跟project.json同级),然后执行命令

dotnet publish -r centos.7-x64

dotnet publish -r centos.7-x64比如:我发布到CentOS7上,dotnet publish -r centos.7-x64

会在\bin\Debug\netcoreapp1.0中生成publish文件夹,然后把整个文件夹copy到CentOS 你指定的文件夹就可以了。比如我的是/opt/DotNetCorePublish/DotNetCoreDemo1/publish

[hager@localhost publish]$ dotnet HelloWebApp.dll 
Hosting environment: Production
Content root path: /opt/DotNetCorePublish/HelloWebApp/publish
Now listening on: http://localhost:5000Application started. Press Ctrl+C to shut down.

注意事项

dotnet run HelloWebApp.dllhttp://www.cnblogs.com/linezero/p/aspnetcoreubuntu.html

# 我的虚拟机IP,以及nginx配置的代理

192.168.74.129 hwapp.netcore.cn

目前需要解决的问题是:(后续解决后,再补充,或者重新写新的笔记)

1、nginx开启启动

2、netcore项目自运行

参考资料:

http://www.cnblogs.com/shanyou/archive/2016/07/04/5636920.html

http://www.doc00.com/doc/100100398

http://www.cnblogs.com/caipeiyu/p/5537021.html

本文分享自微信公众号 - 我为Net狂(dotNetCrazy),作者:Java-iMhager

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-07-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 维护索引(3)——通过重建索引提高性能

    前言: 重建一个索引只是在内部删除并重建索引,使得碎片消失、统计信息更新、物理顺序重新排列组织。它会压缩数据页,按照填充因子填充适当的数据。如果有需要,也会添加...

    逸鹏
  • 扫一扫二维码就能打开网站,就能添加联系人,就能链接wifi

    很多人很想知道怎么扫一扫二维码就能打开网站,就能添加联系人,就能链接wifi,今天说下这些格式 有些功能部分手机不能使用,网站,通讯录,wifi基本上每个手机都...

    逸鹏
  • JetBrains Rider 破解 (ideaIU等等开发工具都通用)

    贴一下Rider下载地址:(下载不了可以用百度云离线下载) Win:https://download.jetbrains.com/resharper/JetBr...

    逸鹏
  • CentOS7下使用nginx实现TCP和UDP代理

    nginx从1.9.0版本开始,新增了ngx_stream_core_module模块,使nginx支持四层负载均衡,实现TCP和UDP代理。默认编译的时候该模...

    yuanfan2012
  • 新手windows安装nginx

    windows安装nginx,下载地址:http://nginx.org/download/ 下载的时候,下载 .zip 后缀的压缩包,因为 .zip 的压缩包...

    蓓蕾心晴
  • CentOS下安装Nginx的操作步骤

    2、yum安装nginx基础依赖包pcre-devel,pcre,openssl,openssl-devel

    yuanfan2012
  • nginx配置默认首页(index.html index.htm)全流程(包含遇到问题的解决)

    自己有个域名,原来直接扔在了服务器的文件夹里(根据客服人员指导),自己玩了一遍nginx的安装部署等操作之后,域名的指向发生了改变,到了nginx成功的界面。

    kirin
  • K8S 部署nginx 自定义命令参数指定配置文件位置启动失败

    路过君
  • CentOS7系统Yum安装Nginx

    院长技术
  • 在CentOS 7上安装Nginx服务器

    下面我就我在CentOS上安装Nginx经验做简单的记录,以备后查。 1、下载nginx-release包 以CentOS 7为例,下载nginx软件包:htt...

    庞小明

扫码关注云+社区

领取腾讯云代金券