概述

在这篇文章中我们将讨论如何在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

参考官方文档:Install Mono on Linux

Mono包并没有包含在CentOS的仓库里,我们需要把Mono的仓库导入到包仓库里,在root 用户权限下执行下面命令:

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

yum-config-manager --add-repo http://download.mono-project.com/repo/centos/

有可能提示找不到yum-config-manager ,这个是因为系统默认没有安装这个命令,这个命令在yum-utils 包里,可以通过命令yum -y install yum-utils 安装。

[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

然后执行

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.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写的
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 里面的文件,来修改站点配置。

运行一个asp.net mvc 4 程序

使用Visual Studio 新建一个asp.net mvc 4 程序,把它发布到jexus服务器,记得不要把 Microsoft.Web.Infrastructure.dll 也拷进去,这是一个和IIS 有强依赖关系的程序集,我们现在访问 http://mono.cloudapp.net/ , 可以看到熟悉的页面:

CentOS 7 上部署Mono 4 和Jexus 5.6的更多相关文章

  1. 如何在CentOS 7上部署Google BBR【搬运、机翻】

    如何在CentOS 7上部署Google BBR 本文章搬运自 https://www.vultr.com/docs/how-to-deploy-google-bbr-on-centos-7 [注:文 ...

  2. 在CentOS 7上部署Ghost博客

    作者:waringid 一.简介 跟静态博客不同的是,Ghost 这种轻量级的动态博客,有一个管理后台,可以直接写作和管理博客.本质上,跟 WordPress 是相通的,只是 Ghost 搭建在 No ...

  3. 在CentOS 8 上 部署 .Net Core 应用程序

    在Centos 8 上 部署 .Net Core 应用程序     -- 记录篇 1.更新dnf 源 1 dnf update 2.安装 Asp.Net Core 运行时 1 dnf install ...

  4. CentOS7上部署MONO和Jexus

    一:安装MONO 首先通过putty连接上linux,我这里的linux版本为CentOS,连上后首先执行: rpm --import "http://keyserver.Ubuntu.co ...

  5. centos 服务器上部署 xxl-job 通过 feign 访问 eureka 上注册的 service timeout

    部署方式 1.使用 jar 包部署 出现的问题 1.通过 feign 调用其他服务,出现超时的问题,该问题不是 ribbon.hystrix 没有配置导致的超时,经过测试,即使配置了也没有作用,该方法 ...

  6. centos服务器上部署javaweb项目(转)

    本文总体参照http://blog.csdn.net/u011019141(然后更据自己情况进行更改) 一.安装JDK 1.首先要查看服务器的系统版本,是32位还是64位 #getconf LONG_ ...

  7. Linux - 在 CentOS 7 上部署 Google BBR

    BBR(Bottleneck Bandwidth and RTT)是一种新的拥塞控制算法,由Google开发.有了BBR,Linux服务器可以显着提高吞吐量并减少连接延迟. Step 1: Upgra ...

  8. CentOS服务器上部署 oracle10gr2

    1.下载Centos系统 Linux 镜像文件.         推荐使用 CentOS5.4,下载地址:http://isoredirect.centos.org/centos/5/isos/i38 ...

  9. 在centOS 7 上部署ansible自动化运维环境(01)

    环境:         3台centos 7        mycat : 10.0.0.2 mariadb1: 10.0.0.3 mariadb2: 10.0.0.4        为了实验方便 f ...

随机推荐

  1. 02.LoT.UI 前后台通用框架分解系列之——灵活的菜单栏

    LOT.UI分解系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#lotui LoT.UI开源地址如下:https://github.com/du ...

  2. MySQL数据库和InnoDB存储引擎文件

    参数文件 当MySQL示例启动时,数据库会先去读一个配置参数文件,用来寻找数据库的各种文件所在位置以及指定某些初始化参数,这些参数通常定义了某种内存结构有多大等.在默认情况下,MySQL实例会按照一定 ...

  3. 让kindeditor显示高亮代码

    kindeditor4.x代码高亮功能默认使用的是prettify插件,prettify是Google提供的一款源代码语法高亮着色器,它提供一种简单的形式来着色HTML页面上的程序代码,实现方式如下: ...

  4. android studio 使用 jni 编译 opencv 完整实例 之 图像边缘检测!从此在andrid中自由使用 图像匹配、识别、检测

    目录: 1,过程感慨: 2,运行环境: 3,准备工作: 4,编译 .so 5,遇到的关键问题及其解决方法 6,实现效果截图. (原创:转载声明出处:http://www.cnblogs.com/lin ...

  5. Velocity笔记--使用Velocity获取动态Web项目名的问题

    以前使用jsp开发的时候,可以通过request很轻松的获取到根项目名,现在换到使用velocity渲染视图,因为已经不依赖servlet,request等一些类的环境,而Web项目的根项目名又不是写 ...

  6. AbpZero--2.如何启动

    1.直接启动 VS中直接启动 2.IIS站点 IIS中配置一个站点来启动(推荐) 3.登录 系统默认创建2个用户 默认用户名:admin 密码:123qwe 租户:Default  默认用户名:adm ...

  7. PHP设计模式(六)原型模式(Prototype For PHP)

    原型设计模式: 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象. 原型设计模式简单的来说,顾名思义, 不去创建新的对象进而保留原型的一种设计模式. 缺点:原型设计模式是的最主要的缺点就 ...

  8. android Handler介绍

    Handler使用介绍: Handler根据接收的消息,处理UI更新.Thread线程发出消息,通知Handler更新UI. Handler mHandler = new Handler() {  p ...

  9. TCP/IP之TCP_NODELAY与TCP_CORK

    TCP/IP之Nagle算法与40ms延迟提到了Nagle 算法.这样虽然提高了网络吞吐量,但是实时性却降低了,在一些交互性很强的应用程序来说是不允许的,使用TCP_NODELAY选项可以禁止Nagl ...

  10. 萌新笔记——vim命令“=”、“d”、“y”的用法(结合光标移动命令,一些场合会非常方便)

    vim有许多命令,网上搜有一堆贴子.文章列举出各种功能的命令. 对于"="."d"."y",我在无意中发现了它们所具有的相同的一些用法,先举 ...