Linux下开发与部署ASP.NET 5的过程


本篇内容介绍了“Linux下开发与部署ASP.NET 5的过程”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1.概述先概述一下实践环境及使用工具—–》操作系统:ubuntu-15.04(32位桌面版)【强烈建议你玩64位版】开发工具:vscode 0.9.1(Linux下32位版)开发辅助工具:generator-aspnet(创建ASP.NET5项目或文件模板;依赖yo工具)开发辅助工具:dnvm(PowerShell脚本;.NET程序运行环境管理工具;借助nuget )开发辅助工具:npm(前端开发必备的工具啦)依赖环境:dnx-mono 1.0.0-beta8(mono版的.NET运行时,含dnu,dnx工具)依赖环境:mono jit(编译器;如使用dnx-coreclr-linux-x64,此编译器可以不需要)依赖环境:libuv(运行平台支持库)部署方式:自托管(selfhost;dnx commands执行)部署方式:容器运行托管(使用docker虚拟化技术)(下面 $: 表示终端命令符下;#:表示在docker容器/bin/bash下执行)2.vscode下载和文档参见https://code.visualstudio.com浏览器下载或者终端下的工具:$: wget x.zip下载地址解压:$: unzip -n x.zip -d /指定目录目录下Code文件就是执行文件,可以直接运行。如在终端任意路径下调出vscode运行,要设置成全局命令,也就是创建链接。$: sudo ln -s /绝对路径/Code /usr/local/bin/code$: code . (在当前路径目录打开vscode)3.dnvm文档参见https://docs.asp.net可能需要安装解压和下载工具:$: sudo apt-get install unzip curl下载sh安装及设置脚本:$: curl -sSL https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.sh | DNX_BRANCH=dev sh && source ~/.dnx/dnvm/dnvm.sh查看帮助:$: dnvm -h查看clr列表:$: dnvm list4.dnx-mono安装dnx所需环境:$: sudo apt-get install libunwind8 gettext libssl-dev libcurl3-dev zlib1g libicu-dev如果你想安装dnx-coreclr-linux-x64:$: dnvm upgrade -r coreclr俺这里只能安装dnx-mono:$: dnvm upgrade -r mono5.mono jit文档参见http://www.mono-project.com添加mono项目签名密钥到系统的软件包存储库:$: sudo apt-key adv –keyserver hkp://keyserver.ubuntu.com:80 –recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF$: echo “deb http://download.mono-project.com/repo/debian wheezy main” | sudo tee /etc/apt/sources.list.d/mono-xamarin.list更新系统的软件包存储库表:$: sudo apt-get update安装完整版的mono jit:$: sudo apt-get install mono-complete查看版本:$: mono -V(大写)6.libuv文档参见http://docs.libuv.org下载最新版http://dist.libuv.org/dist/v1.7.5安装所 香港云主机需环境:$: sudo apt-get install automake libtool进入解压后的目录, 执行命令脚本:$: sh autogen.sh检查或设置编译环境:$:./configure编译:$: make安装编译后程序:$: sudo make install配置开启:$: ldconfig7.npm参见https://nodejs.org参见https://www.npmjs.comnpm依赖在nodejs中,安装nodejs即可。如果采用官方编译好的版本,需要设置成一下全局命令。这里采用源码编译安装。下载源码https://nodejs.org/dist/v4.1.2/node-v4.1.2.tar.gz进入解压后目录,检查和设置编译环境:$: ./configure编译:$: make安装编译后程序:$: sudo make install8.generator-aspnet查看文档https://github.com/OmniSharp/generator-aspnet安装yo:$: sudo npm install -g yo使用yo:$: yo安装generator-aspnet:$: sudo npm install -g generator-aspnet使用generator-aspnet:$: yo aspnet 9.demo以上准备完毕,就可以嗨啦。你可以使用generator-aspnet快速创建一个ASP.NET5项目或文件;用vscode工具来编写代码;灵活使用dnvm(dnu,dnx)来打理运行环境和程序包。关于前端开发,你可以结合npm工具。这里,从官方下载demo。先安装git工具:$: sudo apt-get install git克隆下载:$: git clone https://github.com/aspnet/Home.git aspnet-home进入项目根目录(project.json所在路径),下载项目依赖安装包:$: dnu restore (这一步要保证完整下载哦!)查看project.json中的commands配置:$: code . (打开项目看)执行程序:$: dnx commands(如commands配置 “web”: “…”,就执行dnx web)10.docker 参见https://www.docker.com如果系统是64位,参见官方使用sh脚本方式安装即可。不管系统是32位,还是64位,都可以采用源码编译方式安装(俺目前没体验过)。这里只好使用ubuntu软件仓库已经自带的。安装docker:$: sudo apt-get install docker.io查看版本:$: docker -v运行别的,需要启动docker服务:$: service docker start注:学习docker需要明白镜像,容器,仓库的三大核心概念,请另行脑补!查看镜像:$: sudo docker images查找镜像:$: sudo docker search ubuntu-x86官方提供的镜像几乎都是64位的,我得找x86 32位版的,比较悲催啦!这样查找到的,也可能不合适,下载($: sudo docker pull ubuntu)也慢!可以去https://download.openvz.org/template/precreated 下载模板。导入模板:$: cat x.tar.gz | sudo docker import – ubuntu:latest然后运行镜像到容器,并进入容器:$: sudo docker run -t -i ubuntu:latest /bin/bash进入容器后,可以照前面的步骤安装dnvm,dnx-mono,mono jit,libuv既可。安装完毕后,退出容器:#:exit然后一定要记得提交,保存成新的镜像:$: sudo docker commit -m ‘提交消息’ -a ‘作者信息’ 要提交的容器id 新的镜像名这个新的镜像,你可以运行到容器……我们再保存出镜像:$: sudo docker save -o xx.tar 要保存那个镜像的名称如果你需要载入这个保存的xx.tar:$: sudo docker load –input xx.tar找个ASP.NET5 Web项目,在其根目录添加Dockerfile文件,其代码格式:然后根据Dockerfile配置来创建镜像,并运行容器:$: sudo docker build -t myweb .(myapp:生成新的镜像名; .:Dockerfile文件在当前目录)在宿主机如何浏览运行在容器中的web程序? 可以采用映射端口:$: docker run -t -d -p 5000:5004 myweb这里宿主机浏览器打开http://localhost:5000即可。“Linux下开发与部署ASP.NET 5的过程”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注开发云网站,小编将为大家输出更多高质量的实用文章!

相关推荐: nodejs的原理和使用

本篇内容主要讲解“nodejs的原理和使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷 香港云主机,实用性强。下面就让小编来带大家学习“nodejs的原理和使用”吧!Node.js是一个基于 Chrome V8 引擎、事件驱动I/O的服务端的Java…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 08/07 10:23
下一篇 08/07 10:23

相关推荐