1. 程式人生 > >CentOS 7 上部署Mono 4 和Jexus 5.6

CentOS 7 上部署Mono 4 和Jexus 5.6

概述

在這篇文章中我們將討論如何在CentOS 7作業系統,安裝 jexus、 mono 和 配置 jexus,因此它將能夠在這種環境中執行一個asp.net mvc 4 應用。這篇文章是描述如何在 Linux/Unix 環境中使用Mono執行. NET的應用程式的一部分。

安裝Mono 4

首先你需要有一個CentOS 7環境,可以使用DVD光碟在本地安裝也可以通過阿里雲、騰訊雲或者Windows Azure上裝一個,本文是在Windows Azure環境上部署的CentOS 7,具體可以參考《如何在Windows Azure虛擬機器上部署OpenLogic CentOS映象》。

Yum 包安裝

CentOS 有一個Yum軟體包管理,這極大地簡化了安裝 CentOS 的程式。只要你不需要最新的更新的軟體程式包,通過Yum軟體包管理是最簡單,特別是對於新手 Linux/CentOS 使用者的方法。

通過Yum包安裝Mono

Mono包並沒有包含在CentOS的倉庫裡,我們需要把Mono的倉庫匯入到包倉庫裡,在root 使用者許可權下執行下面命令:

rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF"

有可能提示找不到yum-config-manager ,這個是因為系統預設沒有安裝這個命令,這個命令在yum-utils 包裡,可以通過命令yum -y install yum-utils

安裝。

[[email protected] ~]# yum -y install yum-utils
[[email protected] ~]# 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

然後執行

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 確認已經成功安裝

[[email protected] ~]# 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.6

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寫的Ubuntu 安裝 MonoJexus,其中有把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 裡面的檔案,來修改站點配置。

執行一個asp.net mvc 4 程式

使用Visual Studio 新建一個asp.net mvc 4 程式,把它釋出到jexus伺服器,記得不要把 Microsoft.Web.Infrastructure.dll 也拷進去,這是一個和IIS 有強依賴關係的程式集,我們現在訪問 http://mono.cloudapp.net/ , 可以看到熟悉的頁面: