树莓派3(Raspbain系统)安装.net环境
因为公司之前做的网站项目都是基于微软的.net平台,现在需要在树莓派3上测试它是否能负载起正常的访问请求。最开始直接的想到微软3月份刚发布针对于树莓派3的win10系统,其实说是win10,也就是一个超级精简的嵌入式系统,不过看支持列表里包括win10,所以就打算先试一试。

结果发现兼容树莓派3的Windows 10 IoT系统只有预览版本,正式版只是针对于2代,3的正式版还未发布。而所谓的核心预览版。。。。。。对于没接触过底层开发的我来说就是一个带着图形界面的硬盘 [尴尬脸]

无奈之下重新安装了树莓派官方的 Raspbain 系统,linux 内核,自己之前也做过 ubuntu 系统的服务器搭建,好歹也会熟悉一些。下面进入正题。
总的来说在 linux 系统下搭建.net环境的组合是 mono+jexus ,mono主要作用是提供.net环境,使系统可以运行C#程序;而jexus则类似于window下的IIS,linux下的tomcat,作为网站的管理服务存在,提供一个可供外网访问的接口。jexus也存在不依赖于mono的独立版,在这儿没有采用这种方法,有兴趣可以戳这里。
第一步:安装mono
搜集了很多网上的资料,根据文中提到的版本去下载安装发现在下一步安装jexus的时候会提示需要安装mono或.net环境,说明上一步没有安装成功,但仔细检查没有发现问题,看来还是文件包不行,最后直接从库里下载安装成功。
sudo apt-get install mono-complete
安装完成后输入
mono -V
会显示当前版本号和版本信息,随后用一句简单的C#语句用来测试
输入 csharp ,随后在命令中输入
Console.WriteLine(DateTime.Now);
可以得到系统时间。

PS:这里是服务器本地的时间,可以通过 date -s "2016-09-27 00:00:00" 命令进行纠正。
第二步:安装jexus
执行以下代码下载安装包。可以新建一个文件夹存放下载文件,我在这儿使用的是/root/software
注意:因树莓派是arm处理器,所以必须下载jexus arm专用版,不然会出现安装后资源请求过慢的问题。自己之前没注意最后发现一个200k的css包请求时间就超过30s
wget -c http://www.linuxdot.net/down/jexus-5.8.2-arm.tar.gz
tar -zxvf jexus-5.8.2-arm.tar.gz
cd jexus-5.8.2-arm
也可以在官网上下载最新版本随后用FlashFXP和WinSCP之类的工具传过去,方法类似。
解压后执行安装命令:
sudo ./install
jexus会自动安装到/usr/jexus中,随后移动到该文件夹启动服务
cd /usr/jexus
sudo ./jws regsvr
sudo ./jws start
curl localhost/info
最后一句为测试命令,输出结果:

或者直接通过其他电脑的浏览器输入 IP/info ,可看到如下欢迎界面

初步搞定!也可以通过运行 vim /etc/rc.local 或类似的开机启动脚本,在其中加入
/usr/jexus/jws.start
设置开机启动
第三步:配置与发布
执行命令进入配置文件
vim /usr/jexus/siteconf/default

可以看到默认路径为/var/www/default文件夹,及网站资源访问的默认路径,我们就可以把网站的UI文件夹内的内容复制进去,随后通过IP即可访问。
在这里我传了一个index.html文件作为测试
,效果如下图

此外还可以通过jexus的配置文件配置端口,映射等内容,有兴趣的朋友可以再去尝试。
树莓派3(Raspbain系统)安装.net环境的更多相关文章
- [IOT] - 在树莓派的 Raspbian 系统中安装 .Net Core 3.0 运行环境
之前在 Docker 中配置过 .Net Core 运行环境,地址:[IOT] - Raspberry Pi 4 Model B 系统初始化,Docker CE + .Net Core 开发环境配置 ...
- 树莓派系列教程:安装系统与配置环境,使用PuTTy与VNC图形界面远程登录
本文所需物品清单: Raspberry Pi 3 Model B 主板.SD卡与读卡器(用于烧录系统) 资料整理来源在文尾 需要下载的资源与工具: 推荐系统-Raspbian 树莓派官方深度定制的硬件 ...
- Home Assistant + 树莓派:强大的智能家居系统 · 安装篇
Home Assistant + 树莓派:强大的智能家居系统 · 安装篇 转载:Home Assistant + 树莓派:强大的智能家居系统 · 安装篇 目录 1. 初始安装 3. Homebridg ...
- Win10通过SSH与树莓派Raspbain系统互传文件
1.在Linux系统上安装ssh-server(由于Raspbain系统自带ssh-server,这个步骤可以省略) 查看ssh是否运行的命令: ps -ef | grep ssh 如果没有安装,则安 ...
- mac系统下Ruby环境安装
在我们编写代码过程中,会用到一系列的第三方开源类库,我们可以选择手动去一个个添加需要的库,但这非常麻烦.因此我们可以使用CocoaPods来帮助我们自动添加.使用CocoaPods需要先安装Ruby环 ...
- CentOS 6.5系统使用yum方式安装LAMP环境和phpMyAdmin详细过程
介绍如何在CentOs6.2下面使用YUM配置安装LAMP环境,一些兄弟也很喜欢使用编译的安装方法,个人觉得如果不是对服务器做定制,用yum安装稳定简单,何必去download&make&am ...
- iOS Mac系统下Ruby环境安装
由EasyIOS引出的一系列问题:转载的上一篇CocoaPods安装和使用教程中说明了,为什么要使用cocoapods ,但是要安装cocoapods需要Ruby环境,安装Ruby环境首先需要安装Xc ...
- 树莓派.安装Samba环境
适用于树莓派3 树莓派装好系统后, 为了方便传文件到树莓派, 建议使用Samba这类文件夹级别的应用, 比ftp方便多了 如果你想把树莓派变成Nas, Samba也是不可或缺的应用 通过samba服务 ...
- windows系统下简单nodejs安装及环境配置
相信对于很多关注javascript发展的同学来说,nodejs已经不是一个陌生的词眼,这里不想谈太多的nodejs的相关信息.只说一下,windows系统下简单nodejs环境配置 相信 ...
随机推荐
- 复杂业务下向Mysql导入30万条数据代码优化的踩坑记录
从毕业到现在第一次接触到超过30万条数据导入MySQL的场景(有点low),就是在顺丰公司接入我司EMM产品时需要将AD中的员工数据导入MySQL中,因此楼主负责的模块connector就派上了用场. ...
- 解决org.hibernate.NonUniqueObjectException的问题
不知道是不是之前处理懒加载的问题对session工厂进行了处理,导致了之前没有问题的地方出现了错误. 当修改班级操作时出现了错误 前端错误信息 后台处理以及报错信息 16:37:36,034 ERRO ...
- 【BZOJ3589】动态树 树链剖分+线段树
Description 别忘了这是一棵动态树, 每时每刻都是动态的. 小明要求你在这棵树上维护两种事件 事件0: 这棵树长出了一些果子, 即某个子树中的每个节点都会长出K个果子. 事件1: 小明希望你 ...
- gluster peer probe: failed: Probe returned with unknown errno 107解决方法
当在glusterfs中将服务器加到存储池中,及运行”gluster peer probe server”命令, 遇到peer probe: failed: Probe returned with u ...
- 如何理解java采用Unicode编码
http://blog.csdn.net/gjb724332682/article/details/43229563 Java中字符仅以一种形式存在,那就是Unicode.由于java采用unicod ...
- 【离散数学】 SDUT OJ 传递闭包 && memset 使用注意事项
传递闭包 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 已知有n头牛,m次战斗关系, ...
- SpringCloud-Zuul搭建
一.创建工程,在pom中引入Zuul 二.重写路由加载类,实在路由的动态注册和路由转发 package com.genius.gateway.zuul; import com.genius.gatew ...
- Codeforces Round #162 (Div. 2) A~D 题解
A. Colorful Stones (Simplified Edition) time limit per test 2 seconds memory limit per test 256 mega ...
- SLAM入门必收藏的资料
搜集了各大网络,请教了SLAM大神,终于把SLAM的入门资料搜集全了!在分享资料前,我们先来看看,SLAM技术入门前需要具备哪些知识?首先学习SLAM需要会C和C++,网上很多代码还用了11标准的C+ ...
- JAVA基础——Java 中必须了解的常用类
Java中必须了解的常用类 一.包装类 相信各位小伙伴们对基本数据类型都非常熟悉,例如 int.float.double.boolean.char 等.基本数据类型是不具备对象的特性的,比如基本类型不 ...