在这篇文章中咱们将讨论如何在CentOS 7操做系统,安装 jexus、 mono 和 配置 jexus,所以它将可以在这种环境中运行一个asp.net mvc 4 应用。这篇文章是描述如何在 Linux/Unix 环境中使用Mono运行. NET的应用程序的一部分。html
首先你须要有一个CentOS 7环境,可使用DVD光盘在本地安装也能够经过阿里云、腾讯云或者Windows Azure上装一个,本文是在Windows Azure环境上部署的CentOS 7,具体能够参考《如何在Windows Azure虚拟机上部署OpenLogic CentOS镜像》。react
CentOS 有一个Yum软件包管理,这极大地简化了安装 CentOS 的程序。只要你不须要最新的更新的软件程序包,经过Yum软件包管理是最简单,特别是对于新手 Linux/CentOS 用户的方法。linux
参考官方文档:Install Mono on Linux:web
Mono包并无包含在CentOS的仓库里,咱们须要把Mono的仓库导入到包仓库里,在root 用户权限下执行下面命令:sql
rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF"ubuntu
yum-config-manager --add-repo http://download.mono-project.com/repo/centos/windows
有可能提示找不到yum-config-manager ,这个是由于系统默认没有安装这个命令,这个命令在yum-utils 包里,能够经过命令yum -y install yum-utils 安装。centos
[root@Mono ~]# yum -y install yum-utils
[root@Mono ~]# rpm -qa | grep yum
yum-utils-1.1.31-25.el7_0.noarch
yum-3.4.3-118.el7.centos.noarch
yum-metadata-parser-1.1.4-10.el7.x86_64
yum-plugin-fastestmirror-1.1.31-25.el7_0.noarch bash
而后执行 服务器
yum –y install mono-complete.x86_64 安装全部的软件包
mono-core.x86_64 0:4.0.1-4 mono-data.x86_64 0:4.0.1-4
mono-data-oracle.x86_64 0:4.0.1-4 mono-data-sqlite.x86_64 0:4.0.1-4
mono-devel.x86_64 0:4.0.1-4 mono-extras.x86_64 0:4.0.1-4
mono-locale-extras.x86_64 0:4.0.1-4 mono-mvc.x86_64 0:4.0.1-4
mono-nunit.x86_64 0:4.0.1-4 mono-reactive.x86_64 0:4.0.1-4
mono-wcf.x86_64 0:4.0.1-4 mono-web.x86_64 0:4.0.1-4
mono-winforms.x86_64 0:4.0.1-4 mono-winfxcore.x86_64 0:4.0.1-4
monodoc-core.x86_64 0:4.0.1-4
运行mono –V 确认已经成功安装
[root@Mono ~]# mono -V
Mono JIT compiler version 4.0.1 (tarball Tue May 12 16:19:40 BST 2015)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
TLS: __thread
SIGSEGV: altstack
Notifications: epoll
Architecture: amd64
Disabled: none
Misc: softdebug
LLVM: supported, not enabled.
GC: sgen
Jexus 5.3.1版本开始,Jexus的安装过程简化了,内置了两个新的脚本,它们分别是"install"和"upgrade",对应原来的"安装"和"升级",将Jexus的安装过程自动化了。jexus自己的安装和升级方式并无发生更多的变化,所以对于已经习惯于5.3.1以前版本的使用方式的用户,大家仍然能够采用以前的安装方式。
wget linuxdot.net/down/jexus-5.6.4.tar.gz
tar -zxvf jexus-5.6.4.tar.gz
cd jexus-5.6.4
./install
安装完成~!!!(上面的安装过程也可使用这个命令完成 curl jexus.org/5.6.x/install | sh )在执行install脚本时,jexus默认是安装到/usr/jexus/中,若是想安装到其余目录,能够在执行该脚本时增长一个目录的参数(好比 sudu install /usr/local/jexus/)。对于升级就是执行upgrade脚本。
启动jexus 检查是否正常了
启动 /usr/jexus/jws start
中止 /usr/jexus/jws stop
重启 /usr/jexus/jws restart
添加为系统服务,随系统启动
Zendic写的 Centos、Ubuntu 安装 Mono、Jexus,其中有把Jexus添加为系统服务的代码:
cd /etc/init.d/
vi jws
按i编辑模式,粘贴下面内容
#!/bin/bash
#chkconfig: 2345 80 05
#description:jws
#
. /etc/rc.d/init.d/functions
case "$1" in
start)
echo "Jexus Start.."
/usr/jexus/jws start
;;
stop)
echo "Jexus Stop.."
/usr/jexus/jws stop
;;
restart)
echo "Jexus Restart"
/usr/jexus/jws restart
;;
status)
/usr/jexus/jws status
;;
*)
exit 1
;;
esac
exit $RETVAL
按ESC后,输入:wq保存文件
把这个脚本做为"服务"加入
chmod 766 jws
chkconfig --add jws
至此,JEXUS已跟随系统启动,能够reboot一下试试看
你也能够经过修改 /usr/jexus/siteconf 里面的文件,来修改站点配置。
使用Visual Studio 新建一个asp.net mvc 4 程序,把它发布到jexus服务器,记得不要把 Microsoft.Web.Infrastructure.dll 也拷进去,这是一个和IIS 有强依赖关系的程序集,咱们如今访问 http://mono.cloudapp.net/ , 能够看到熟悉的页面: