CentOS 下部署 ASP.NET Core环境
一、安装dotnet
1.下载运行环境
https://www.microsoft.com/net/download/linux
下载Runtime:https://go.microsoft.com/fwlink/?LinkID=825888
- 安装dotnet Runtime
>yum install libunwind libicu
> mkdir -p /opt/dotnet && tar zxf dotnet.tar.gz -C /opt/dotnet
> ln -s /opt/dotnet/dotnet /usr/local/bin
安装步骤:https://www.microsoft.com/net/core#linuxcentos
安装成功,此时执行dotnet 命令即可验证。
- 上传完整文件至指定目录:
/root/data/wwwroot/testweb/
并解压文件。
- 启动站点
dotnet testweb.dll
注:这里只是测试启动,线上环境需要配置服务进程启动,后文介绍。
二 安装Nginx
1.安装nginx
下载nginx: http://nginx.org/download/nginx-1.8.0.tar.gz
安装参考:http://blog.csdn.net/yuanchao99/article/details/46357173
2.编译nginx:
>./configure --prefix=/usr/local/nginx --with-http_sub_module --http-log-path=/usr/local/nginx/logs/access.log --error-log-path=/usr/local/nginx/logs/error.log --pid-path=/usr/local/nginx/pid/nginx.pid --lock-path=/usr/local/nginx/lock/nginx.lock --with-http_ssl_module
>make && make check && make install
3.启动nginx
>nginx
4.配置nginx
>cd /usr/local/nginx/conf
>vi nginx.conf
添加如下配置内容:
server {
listen 80;
server_name www.aspdotnet.com;#站点请求域名
#charset koi8-r;
access_log logs/testweb.access.log;#日志保存路径
location / {
root /root/data/wwwroot/testweb;#站点部署目录
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;
}
5.保存并退出配置。
6.重新加载nginx 配置:
>nginx –s reload
三、安装supervisor守护进程
1.
>yum install supervisor
安装步骤参考:
2配置
>mkdir /etc/supervisor
>echo_supervisord_conf > /etc/supervisor/supervisord.conf
3. 修改supervisord.conf文件
将文件尾部的配置,修改为:
[include]
files = conf.d/*.conf
4. 创建配置文件
> vi /etc/supervisor/conf.d/testweb.conf
编辑如下内容:
[program:testweb]
command=/usr/local/bin/dotnet /root/data/wwwroot/testweb/testweb.dll
directory=/root/data/wwwroot/testweb/
autostart=true
autorestart=true
stderr_logfile=/root/data/wwwroot/logs/testweb.err.log
stdout_logfile=/root/data/wwwroot/logs/testweb.out.log
environment=ASPNETCORE_ENVIRONMENT=Production
user=root
stopsignal=INT
5. 启动站点
supervisord -c /etc/supervisor/supervisord.conf
注:每次修改配置后要执行supervisorctl reload 重新加载更新配置。
不过执行命令是要定位到目录/etc/supervisor 下再执行服务命令。
supervisor 命令:
Supervisord安装完成后有两个可用的命令行supervisor和supervisorctl,命令使用解释如下:
supervisord,初始启动Supervisord,启动、管理配置中设置的进程。
supervisorctl stop programxxx,停止某一个进程(programxxx),programxxx为[program:blogdemon]里配置的值,这个示例就是blogdemon。
supervisorctl start programxxx,启动某个进程
supervisorctl restart programxxx,重启某个进程
supervisorctl stop all,停止全部进程,注:start、restart、stop都不会载入最新的配置文件。
supervisorctl reload,载入最新的配置文件,并按新的配置启动、管理所有进程。
参考:http://blog.haohtml.com/archives/15145
6.查看服务进程是否正常启动
ps -ef | grep testweb
OK! 到这里站点已经启动运行了。
CentOS 下部署 ASP.NET Core环境的更多相关文章
- CentOS 7 部署 ASP.NET Core 应用程序
原文:CentOS 7 部署 ASP.NET Core 应用程序 看了几篇大牛写的关于 Linux 部署 ASP.NET Core 程序的文章,今天来实战演练一下.2017年最后一个工作日,提前预祝大 ...
- 在Linux(Ubuntu)下搭建ASP.NET Core环境并运行 继续跨平台
最新教程:http://www.cnblogs.com/linezero/p/aspnetcoreubuntu.html 无需安装mono,在Linux(Ubuntu)下搭建ASP.NET Core环 ...
- Ubuntu 下部署asp.net运行环境
在Ubuntu下部署asp.net运行环境,网上教程很多,基本都是编译Mono源码,然后安装jexus.但是可能是我最近RP不太好,编译Mono源码一直都是失败,无奈之下只好找另外的方法安装了. 网上 ...
- linux 环境下部署 Asp.Net Core 项目 访问 oralce 数据库
1.ASP.NET Core 是一个跨平台的高性能开源框架,可以部署到Linux上,那项目部署在Linux上有哪些好处呢? 1.linux硬件需求小,大部分版本免费,成本低. 2.linux的用户管理 ...
- CentOS 7部署ASP.NET Core应用程序
看了几篇大牛写的关于Linux部署ASP.NET Core程序的文章,今天来实战演练一下.2017年最后一个工作日,提前预祝大家伙元旦快乐.不扯淡,直接进入正题.您有任何问题请在评论区留言. 1.环境 ...
- 【转载】CentOS 7部署ASP.NET Core应用程序
看了几篇大牛写的关于Linux部署ASP.NET Core程序的文章,今天来实战演练一下.2017年最后一个工作日,提前预祝大家伙元旦快乐.不扯淡,直接进入正题.您有任何问题请在评论区留言. 1.环境 ...
- 【转】CentOS 7部署ASP.NET Core应用程序
很早就看过关于net core部署在Linux上的文章,自己也曾亲自将项目部署在Linux上,今天看到这篇文章,为其格式之工整而转! 1.环境准备 网上看了一下,Linux云服务器还挺贵的,那就只好先 ...
- 【详细】【转】CentOS 7部署ASP.NET Core应用程序
很早就看过关于net core部署在Linux上的文章,自己也曾亲自将项目部署在Linux上,今天看到这篇文章,为其格式之工整而转! 1.环境准备 网上看了一下,Linux云服务器还挺贵的,那就只好先 ...
- Centos环境下搭建Asp.NET Core环境和安装Jexus
.NET Core2.0出来以后,很多公司开始用于实践生产,其中的原因想必大家都明白,最主要的一下几点. 跨平台,能够部署在Linux和Docker容器中 性能优越,测试时Node的20倍左右 ...
随机推荐
- effective OC2.0 52阅读笔记(六 块与大中枢派发)
派发队列:dispatch_queue 操作队列:NSOperationQueue 组:dispathc_group_t 37 理解“块”这一概念 总结:块就是一个值,且自有其相关类型.块的强大之处 ...
- ABAP BAPI 销售订单生产交货单函数
TYPES: BEGIN OF ty_so, vbeln LIKE vbap-vbeln, posnr LIKE vbap-posnr, END ...
- yii 常用的多表查询
return $this->model()->getDbConnection()->createCommand() ->select("t.type,t.title, ...
- TCP协议三次握手和四次挥手
http://www.cnblogs.com/rootq/articles/1377355.html TCP(Transmission Control Protocol) 传输控制协议 TCP是主机对 ...
- AngularJS中bootstrap启动
对于一般的使用者来说,AngularJS的ng-app都是手动绑定到某个dom元素.但是在一些应用中,这样就显得很不方便了 绑定初始化 通过绑定来进行angular的初始化,会把js代码侵入到html ...
- [BI项目记]-文档版本管理笔记
代码的版本管理程序员们有专门的工具,那么作为项目管理人员如何进行文档版本的管理呢,此篇介绍如何通过SharePoint进行文档版本管理. 在没有SharePoint的时代我们如何管理版本呢?通常我们会 ...
- Asp.net通过模板(.dot/Html)导出Word,同时导出图片
一.Office组件导出Word(服务器配置麻烦) 需要引用Office的DLL,在下文的附件中,不同的Offic版本用的不一样,虽然高级版本可以兼容低级的,不过,还是统一版本最好 贴上核心代码(转载 ...
- map 和 vector 的erase函数说明
1. map的erase函数使用 这里首先要注意,C++针对map的erase函数有不同的函数原型,这往往是出现问题的关键所在.根据参考文献1: 在C++98中: (1) void erase (it ...
- 图文:通过sql server 连接mysql
1.在SQL SERVER服务器上安装MYSQL ODBC驱动; 驱动下载地址:http://dev.mysql.com/downloads/connector/odbc/ 2.安装好后,在管理工具- ...
- tcp三次握手和四次握手
建立TCP需要三次握手才能建立,而断开连接则需要四次握手.整个过程如下图所示: 先来看看如何建立连接的. 首先Client端发送连接请求报文,Server段接受连接后回复ACK报文,并为这次连接分配资 ...