windows 下开发的 .netCore MVC 部署到 Linux(Mint)
这两天在公司跟同事偶然聊到 .netCore,说到一些趋势什么的。但是说来说去自己也没试过在Linux 机子上部署过,所以就试一下。
尝试之前也在网上看了一些文章,包括 Linux 上.netCore 环境的配置,然后到 项目部署。
然后在自己操作的时候发现有些跟自己看到的一点有所不同,比如:好些文章都讲到 发布 项目的时候,在 project.json 文件改平台信息。但自己操作发现没有这样一个选项。
后来才发现,网上说的方法是 .netCore 1.0 版本的(目前已经发布了 2.0 预览版),然后自己电脑上是 1.1 版本了,已经用回vs原来的项目文件后缀。ps 本文使用的是 vs2017+.netCore 1.1.
Linux 环境是 VMware 上装的虚拟机。
直接上过程。
1.首先是环境配置
目前在微软 .netCore 的网站上各个系统环境配置过程 https://www.microsoft.com/net/core#linuxredhat
本文 使用的是 Linux MInt 18. 下面是配置过程命令
a 获取 .netCore 支持程序(直译)
sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ xenial main" > /etc/apt/sources.list.d/dotnetdev.list'
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 417A0893
sudo apt-get update
b 安装 .netCore SDK
sudo apt-get install dotnet-dev-1.0.4
(到这里其实环境已经安装完成,但是官网里后面还有两个步骤,是创建一个demo 看看的)
c 创建一个 控制台程序 hwapp (Hello World app),创建的这个 hwapp 是以一个文件夹形式的。
dotnet new console -o hwapp
然后 打开 hwapp 文件夹:
cd hwapp
d 然后 加载依赖(dotnet restore 从 nuget 按需下载项目所需的依赖,这个还是经常用的)
dotnet restore
最后就是运行项目了
dotnet run
2. 创建项目
在上面我们已经搭建好Linux 上的.netCore 环境。接下来我们创建 项目。这里在 Windows 下创建。
我们新建一个 基本的 .netCore MVC 项目

创建完后我们直接发布

发布这里,跟 1.0 发布的界面有所不同,我们这里选择文件夹

得到 发布后的项目文件

3.转移项目文件
接下来就是把发布后的文件复制到 我们的 Linux 系统。这个复制手段有多种(镜像挂载,共享文件夹(需安装 VMware tools ),还有可以移动磁盘),本文这里用的是 优盘做中介,在windows 复制文件到 优盘 ,然后 再在虚拟机 挂载 优盘。

然后把文件夹复制到 我们Linux 的一个 目录上 。本文将文件放到 /home/meng/myapps/app4 文件夹下

4.执行程序
下面又要开始敲命令了
进入到我们程序的目录:
cd /home/meng/myapps/app4

然后 执行程序
dotnet WebApplication1.dll (没错,就直接打开 主程序的 dll 就行了)

(默认是打开 5000 端口)

其实可以像下面那样直接运行
dotnet /home/meng/myapps/app4/WebApplication1.dll
基本的发布也就这样了。第一次用 Linux 发布 程序,有种感觉,就是程序的执行比 Windows 简单多,自己的项目自己用文件夹管理好,那我们直接用命令打开对应路径下的程序,就可以直接发布,感觉简单了好多。
windows 下开发的 .netCore MVC 部署到 Linux(Mint)的更多相关文章
- [MapReduce_add_1] Windows 下开发 MapReduce 程序部署到集群
0. 说明 Windows 下开发 MapReduce 程序部署到集群 1. 前提 在本地开发的时候保证 resource 中包含以下配置文件,从集群的配置文件中拷贝 在 resource 中新建 ...
- Linux下与Windows下开发软件
Linux下开发程序可以完全发挥自己的聪明才智,因为系统内核是完全开放的.Windows下开发程序就稍微郁闷一点,不论何种语言都必须在调用系统API的基础上开发,因为系统内核是不开放的. 这两种系统正 ...
- 如何在Windows下开发Python:在cmd下运行Python脚本+如何使用Python Shell(command line模式和GUI模式)+如何使用Python IDE
http://www.crifan.com/how_to_do_python_development_under_windows_environment/ 本文目的 希望对于,如何在Windows下, ...
- windows下开发PHP扩展dll(无需Cygwin)
windows下开发php扩展网上很多资料都说需要Cygwin,其实完全可以不必安装该东东.没错,是可以在linux下生成骨架后拷到windos下来用,但是,如果没有linux环境呢?什么,装虚拟机? ...
- windows下Redis 主从读写分离部署
原文:windows下Redis 主从读写分离部署 1.可直接下载window下的运行文件(下面这个链接) 也可以浏览github 查看相应的版本说明文档 https://github.com/Ser ...
- gcc和MinGW的异同(在cygwin/gcc做的东西可以无缝的用在linux下,没有任何问题,是在windows下开发linux程序的一个很好的选择)
cygwin/gcc和MinGW都是gcc在windows下的编译环境,但是它们有什么区别,在实际工作中如何选择这两种编译器. cygwin/gcc完全可以和在linux下的gcc化做等号,这个可以从 ...
- [转帖]Windows下cwRsyncServer双机连续同步部署
Windows下cwRsyncServer双机连续同步部署 https://www.cnblogs.com/nulige/p/7607503.html 找时间做一下测试 应该能更好的实现 自动部署的功 ...
- .netcore项目部署到linux的docker里后,速度异常的慢
.netcore项目部署到linux的docker里后,速度异常的慢,部署在iis下速度非常快. 特别是 接口里再调用其他接口,那速度绝对是蜗牛爬行的速度. 经过几个月的折腾,终于知道是什么问题了: ...
- Linux 如何使用压缩与解压缩的方式将Windows下的zip压缩包上传到Linux系统
当我们无法使用xftp方式上传文件到Linux系统时,我们可以使用在Windows下压缩文件夹,然后到Linux系统下解压缩的方式,完成整个上传工作. 第一步:在Windows系统下,将整个文件夹压缩 ...
随机推荐
- [转载]开启debug调试模式
debug+trace模式可以查看开发过程中TP的错误信息,可以更好地帮助开发者debug.但是debug模式的开启还不是简单的在配置文件中中设置就可以的,经过查资料摸索,找到一种有效的方法. 首先在 ...
- php5.5.15注释问题PHP Deprecated: Comments starting with '#' are deprecated in *.ini 警告解决办法
PHP Deprecated: Comments starting with '#' are deprecated in D:\mvam\php5\php.ini on line 1944 in U ...
- 问题 A: xiaoping学构造函数
题目描述 xiaoping刚接触类的构造和析构函数,对于构造函数的编写比较困惑.zhuangzhuang给小平布置了一道题目,xiaoping苦思两天也无法解答,请你帮帮xiaoping吧. #inc ...
- 2017.11.27 用Servlet在JSP中加入验证码
登陆界面 <%@ page pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML ...
- 根据值设置select的选中项
$('.selector').attr("checked", true); <s:iterator value="jobSelect" id=" ...
- django中csrftoken跨站请求伪造的几种方式
1.介绍 我们之前从前端给后端发送数据的时候,一直都是把setting中中间件里的的csrftoken这条给注释掉,其实这个主要起了一个对保护作用,以免恶意性数据的攻击.但是这样直接注释掉并不是理智型 ...
- 前端jQuery基本语法
1.概念 1.1基础知识 jQuery是一个兼容多浏览器的JavaScript库,封装了开发过程中常用的一些功能,类似Python模块 jQuery就是用JS写的,JS是基础 jQuery写起来简单, ...
- angular学习之angular-phonecat项目的实现
---恢复内容开始--- AngularJS官方网站提供了一个用于学习的示例项目:PhoneCat.这是一个Web应用,用户可以浏览一些Android手机,了解它们的详细信息,并进行搜索和排序操作. ...
- RocketMQ源码分析之RocketMQ事务消息实现原理中篇----事务消息状态回查
上节已经梳理了RocketMQ发送事务消息的流程(基于二阶段提交),本节将继续深入学习事务状态消息回查,我们知道,第一次提交到消息服务器时消息的主题被替换为RMQ_SYS_TRANS_HALF_TOP ...
- 【shopex】添加网页挂件widgets
一步步做个widgets 基础篇 首先建立一个目录plugins/widgets/helloword 这个就是新的挂件目录,系统的每个widgets都是一个目录 里面放两个文件: widgets.ph ...