专栏首页雪雁的专栏在全Linux环境去开发、运行、部署.NET Core项目!

在全Linux环境去开发、运行、部署.NET Core项目!

2016年.NET Core首个正式版本问世,如今已发布到了.NET Core3.1,再有2个月.NET5也将如约而至,跨平台开发已经快5年,然而很多人却还只是在Windows上用Visual Studio + SQL Server去做.NET Core跨平台开发,欠缺对Linux的认知。这次.NET社区邀请大咖为诸位做一次分享,在全Linux环境去开发、运行、部署.NET Core项目!让我们一起拥抱Linux吧!

一起拥抱Linux

Linux优势

Linux是完全开源的,轻松查看源码并修改和定制,完全免费的属性也深得企业青睐,而且稳定性、安全性、灵活性都远超Windows服务器,当下全球大量数据中心的服务器已经开始向基于 Linux Server 平台转移。

开源组件

耳熟能详的各种高并发组件,Redis、MongoDB、RabbitMQ、Nginx、Kafka等等,都是基于Linux服务器开发和发布的,虽然也为Windows Server提供了安装版本,但都是阉割版的,版本更新都严重迟滞,像Redis在Windows下的性能表现,达不到Linux下的50%。

Linux大势所趋

当下互联网技术的发展方向是容器化、K8S、DevOps、云原生,90%的工具环境都是基于Linux的,微软都出.NET Core去适配Linux,还推出了VS Code的开发工具,甚至连SQL Server都有Linux版本了。

DotNetdaily

全Linux开发前的准备工作

.NET Core发布4年多了,在Linux下开发运行部署都已经有完整的解决方案了,在开始实战前我们需要做一系列准备工作,其中所提工具和环境在文末也有整理,大家可自取。

服务器准备

不习惯双系统的小伙伴儿,可以用VMware workstation弄个虚拟机,Linux操作系统繁多,这里我推荐最新版本CentOS8。开始可能不太习惯,用用就好了。

开发环境准备

当然是Visual Studio Code,微软出品必属精品,然后是.NET Core3.1的环境。数据库我推荐用MySQL标配,不要试图用SQL Server for Linux了。

项目框架选择

这个跟Window下开发是没啥区别的,这次选用的是前后分离架构,前端Vue,后端是Core WebApi,O/RM选择的轻量级Dapper,连接MySQL也方便。

部署运行

用Docker容器部署的Nginx+WebApi实例集群,然后MySQL和Redis就直接安装在Linux的宿主机上面,一个小项目就这样构建起来了。

DotNetdaily

.NET Core全Linux开发分享会

在做完上述准备工作后,即可以开始全Linux环境去开发、运行、部署.NET Core项目。

在本次分享中,我会演示整套的环境安装,完整的项目手写,包括后续的部署上线过程,现场踩坑(大小写坑、路径坑、部署坑)等,还会给梳理下.NET Framework项目迁移到.NET Core,Windows环境到Linux环境迁移的注意点,希望能给大家一点帮助!

想一起实操分享前需准备:

1 基于VMware准备好Linux虚拟机,配置好网络(安装软件和激活码在下面)

2 .NET Core在Linux下安装和开发基础

3 Linux管理的SSL工具包

(安装包及 .NET Core2.2的开发讲解视频自取)

本文分享自微信公众号 - magiccodes(xl----0),作者:朝夕Net社区

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-09-16

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • .NET手撸绘制TypeScript类图——上篇

    近年来随着交互界面的精细化, TypeScript越来越流行,前端的设计也越来复杂,而 类图正是用简单的箭头和方块,反映对象与对象之间关系/依赖的好方式。许多工...

    心莱科技雪雁
  • .NET导出Excel的四种方法及评测

    导出Excel是.NET的常见需求,开源社区、市场上,都提供了不少各式各样的Excel操作相关包。本文,我将使用NPOI、EPPlus、OpenXML、Aspo...

    心莱科技雪雁
  • 【B】替换 Quartz.net 默认使用的 MySql.Data 为 Mysqlconnector 的学习过程

    无论是 Quartz.net 还是 MySql.Data 都是我们比较熟悉的库了,Quartz.net 如果配置为使用 MySql 数据库做持久化时,默认是硬编...

    心莱科技雪雁
  • Linux简介与厂商版本

    1. Linux简介 Linux可以有狭义和广义两种定义。狭义来说,Linux实际上指Linux kernel (内核)。内核负责管理硬件,并为上层应用提供接口...

    Vamei
  • Python自动化运维之Linux概述和虚拟机安装使用终极指南

    • Red Hat Linux :红帽Linux(企业版+免费版CentOS)

    海仔
  • 这么多Linux版本,你究竟该怎么选择?

    Linux有非常多的版本,比如世面上常见的有 Ubuntu、RedHat、Fedora、Centos等等,这么多的版本我们究竟该选哪一个呢?今天我带大家对各个版...

    Coding十日谈
  • Linux学习笔记之查看Linux版本信息

    这里所谓的Linux版本信息,包括Linux内核版本信息和Linux系统版本信息。

    Jetpropelledsnake21
  • 再见虚拟机!在Win10中使用Linux版本的R和Python

    想象一下,你用 Linux 版本的 Tensorflow 建立了一个美妙的 RNN 模型,然后无缝切换到 Windows 用 Excel 直接编辑结果,画了一幅...

    1480
  • Linux 思维导图整理(建议收藏)

    来源:https://www.jianshu.com/p/59f759207862

    良月柒
  • Linux 思维导图整理(建议收藏)

    PS:图片都是在学习中或者偶然看到的,感谢感谢,因此我会附上图片的来源,如有侵权,请联系我,谢谢。

    AI算法与图像处理

扫码关注云+社区

领取腾讯云代金券