ASP.Net Core 运行在Linux(Ubuntu)
2016-12-01 15:57
344 查看
这段时间一直在研究asp.net core部署到linux,今天终于成功了,这里分享一下我的部署过程。
Linux Disibutaion:Ubuntu 14.04
Web Server:nginx、Kestrel
1、安装.net core
2、安装.net core成功之后,新建asp.net core mvc项目
3、到这一步还无法发布项目,我们需要安装npm,gulp,bower这三个工具
4、完成之后,就可以对项目进行发布了
5、下面我们就要安装nginx做反向代理
因为要使用nginx做asp.net core网站的反向代理,我们需要修改nginx的默认配置文件/etc/nginx/sites-available/default ,将以下内容替换默认配置:
保存退出
6、安装supervisor
我们部署的网站并不会自己启动并运行,这里我们就需要用到supervisor这个工具,保证网站的启动和持续运行。
配置supervisor,进入目录(/etc/supervisor/conf.d/),新建配置文件hwapp.conf,将如下内容复制到文件中
关闭并启动supervisor
到此,整个部署流程完成了!
下图在我部署在linux中的asp.net core网站的访问页面:
Linux Disibutaion:Ubuntu 14.04
Web Server:nginx、Kestrel
1、安装.net core
sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list' sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 417A0893 sudo apt-get update sudo apt-get install dotnet-dev-1.0.0-preview2.1-003177
2、安装.net core成功之后,新建asp.net core mvc项目
#新建文件夹hwapp mkdir hwapp #进入hwapp文件夹 cd hwapp #新建asp.net core mvc项目 dotnet new -t web #还原.net core nuget包 dotnet restore
3、到这一步还无法发布项目,我们需要安装npm,gulp,bower这三个工具
#安装npm sudo apt-get install npm #安装gulp sudo npm install gulp -g #安装bower sudo npm install bower -g
4、完成之后,就可以对项目进行发布了
#发布项目,默认发布路径在当前项目下bin/Debug/netcoreapp1.1/publish/ dotnet publish
5、下面我们就要安装nginx做反向代理
#安装nginx sudo apt-get install nginx #启动nginx sudo service nginx start
因为要使用nginx做asp.net core网站的反向代理,我们需要修改nginx的默认配置文件/etc/nginx/sites-available/default ,将以下内容替换默认配置:
server { listen 80; 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; } }
保存退出
#检查nginx配置是否zhengque sudo nginx -t #重新加载nginx配置 sudo nginx -s reload
6、安装supervisor
我们部署的网站并不会自己启动并运行,这里我们就需要用到supervisor这个工具,保证网站的启动和持续运行。
#安装supervisor sudo apt-get install supervisor
配置supervisor,进入目录(/etc/supervisor/conf.d/),新建配置文件hwapp.conf,将如下内容复制到文件中
[program:hwapp] command=/usr/bin/dotnet /var/hwapp/publish/hwapp.dll --server.urls:http://*:5000 directory=/var/hwapp/publish autostart=true autorestart=true stderr_logfile=/var/log/hwapp.err.log stdout_logfile=/var/log/hwapp.out.log environment=ASPNETCORE_ENVIRONMENT=Production user=www-data stopsignal=INT
关闭并启动supervisor
sudo service supervisor stop sudo service supervisor start
到此,整个部署流程完成了!
下图在我部署在linux中的asp.net core网站的访问页面:
相关文章推荐
- 在Linux(Ubuntu)下搭建ASP.NET Core环境并运行 继续跨平台
- Linux(Ubuntu)下搭建ASP.NET Core环境
- 【无私分享:ASP.NET CORE 项目实战(第十章)】发布项目到 Linux 上运行 Core 项目
- ASP.NET Core 发布至Linux生产环境 Ubuntu 系统
- ASP.NET Core 发布至Linux生产环境 Ubuntu 系统
- 在Linux上用supervisor运行ASP.NET Core站点的一个坑
- ASP.NET Core 应用在Linux上如何运行
- 【asp.net core】Publish to a Linux-Ubuntu 14.04 Server Production Environment
- 【无私分享:ASP.NET CORE 项目实战(第十章)】发布项目到 Linux 上运行 Core 项目
- 在Linux和Windows的Docker容器中运行ASP.NET Core
- Ubuntu 安装 CLI 并运行 ASP.NET Core 1.0
- Linux(Ubuntu)下搭建ASP.NET Core环境
- 在Linux上以服务的方式运行ASP.NET Core站点
- .NET跨平台之旅:在生产环境中上线第一个运行于Linux上的ASP.NET Core站点
- ASP.Net Core 运行在Linux(CentOS)
- .NET跨平台之旅:在Linux上以本地机器码(native)运行ASP.NET Core站点
- 在Linux和Windows的Docker容器中运行ASP.NET Core
- Linux(Ubuntu)下搭建ASP.NET Core环境
- Ubuntu 9.04 下使用Apache2,mod_mono 配置asp.net 2.0 运行环境教程
- 在 Linux 操作系统中使用 Nginx 运行 ASP.NET 4