在CentOS上部署基于dnx/coreclr的ASP.NET 5应用程序

在Ubuntu上写好了一个简单的ASP.NET 5应用程序,尝试将这个程序部署在没有mono环境的CentOS服务器上。

部署步骤如下:

1)安装libuv(KestrelHttpServer需要它)

curl -sSL https://github.com/libuv/libuv/archive/v1.4.2.tar.gz | sudo tar zxfv - -C /usr/local/src
cd /usr/local/src/libuv-1.4.2
sh autogen.sh
./configure
make 
make install
rm -rf /usr/local/src/libuv-1.4.2 && cd ~/
ldconfig

2)安装openssl(Roslyn.Utilities.SHA1CryptoServiceProvider会用到它)

yum install -y openssl-devel

3)安装dnvm

curl -sSL https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.sh | DNX_BRANCH=dev sh && source ~/.dnx/dnvm/dnvm.sh
dnvm update-self

4)用dnvm安装基于coreclr的dnx

dnvm upgrade -r coreclr -u

5)用git签出ASP.NET 5应用程序的源代码

6)安装ASP.NET 5应用程序所需的nuget包包

由于基于corelcr的dnu restore目前无法使用,只能使用基于mono的dnu restore,但服务器上没有mono,也不想安装mono。于是通过scp命令从开发时用的Ubuntu服务器上下载包包。

scp root@ubuntu_server:~/.dnx/packages ~/.dnx

7)通过dnx命令运行ASP.NET 5应用程序

# dnx . kestrel
Started

成功!

posted @ 2015-06-29 12:00 dudu 阅读(...) 评论(...) 编辑 收藏