《步步入门》 .NET 6 部署到Linux


《步步入门》 .NET 6 部署到Linux


搭建Linux服务器

要搭建一个部署ASP.NET core的服务器,一般情况有两种选择。

一是购买云服务器,最近天翼云搞活动,一年通用型云主机,才60RMB,还是蛮优惠的。活动地址:上云狂欢季 (ctyun.cn),部署个人网站,搞个测试还是够用了。本人就使用云服务器做下面的演示。

如果觉得没必要买云服务器,可以自己使用虚拟机,安装Linux也是可以的,看个人喜好。

云服务器购买好后,进入控制中心查看云主机,友情提示,电信的控制中心有个很不友好的地方,就是必须选对云主机所在地区才会显示,我在此掉个一次坑,提醒大家避坑。

image-20211125221259426

言归正传,我用的是Ubuntu20.64版本的,不过你也选择其他Linux系统,不过需要注意的是,你选择的Linux系统版本和.core版本是否适配.从https://docs.microsoft.com/zh-cn/dotnet/core/install/linux?WT.mc_id=dotnet-35129-website 可以查看详细的各个Linux系统和.NET的版本适配。

image-20211125223207246

从图中看到目前只显示最高支持5.0,经测试最新版的6.0也是支持的。

如果购买时选错了,也没关系,可以更换系统,我就从CentOS更换到了Ubuntu

image-20211126194122052

如果购买时没有要求设置密码,还有在控制中心设置一下密码,用于Linux系统登录。

安装Liunx远程连接工具

家用免费版Xshell 7(命令行工具)和Xftp 7(文件传输)下载,安装好使用云服务器操作系统账号登录,不出意外你将看到一下界面。

image-20211126195550342

安装.NET运行环境

点击在 Ubuntu 上安装 .NET - .NET | Microsoft Docs安装对应版本的运行环境.

image-20211126200124544

我的是ubuntu20.4,就选择20.4好了。

  1. 在xshell中执行以下命令,添加包签名

    wget https://packages.microsoft.com/config/ubuntu/21.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
    sudo dpkg -i packages-microsoft-prod.deb
    rm packages-microsoft-prod.deb
    

    image-20211126200939291

  2. 安装NET6 SDK

      sudo apt-get update; \
      sudo apt-get install -y apt-transport-https && \
      sudo apt-get update && \
      sudo apt-get install -y aspnetcore-runtime-6.0
    

    image-20211126201110884

    1. 测试是否安装成功,执行

      dotnet --version
      //显示安装的版本号,恭喜你安装成功
      

​ 👀注意:此种环境安装方式是需要网络支持的。有些企业网络资源访问受限,使用此种方式是安装不了。就需要下载安装包,手动安装,官方也有详细的手动安装说明,这里就不累述了。**

生成ASP.NET Core网站

  1. 打开vs2022(目前只有vs2022才支持.NET6的开发),创建一个ASP.NET CORE WEB应用,取一个喜欢的名字,创建完成,项目看起来是酱样子的,一个简单的asp网站就建好了。

image-20211126202604137

  1. 为了调试和发布后网站访问端口一直,需要更改一下appsettings.json的配置。增加一项"urls": "http://*:8880",‘8880’嘛就是网站访问端口,可自行修改。
{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft.AspNetCore": "Warning"
    }
  },
  "urls": "http://*:8880",
  "AllowedHosts": "*"
}

  1. 发布网站

    打开powershell,执行

    dotnet publish --framework net6.0 --runtime ubuntu.20.04-x64 --output "D:\wb\ubuntu2004" --configuration Release  --no-self-contained
    

    发布文件放在“D:\wb\ubuntu2004”,可自行指定其他目录

    image-20211126204141230

    网站发布好后,离成功就一步之遥了,心情越来越激动了。

部署网站

打开Xftp 7,用云系统用户登录,就可以操作本地文件一样方便了,直接把发布文件夹拖到右边,文件就非常愉悦的传到了服务器上。

对于我们这种不太熟悉Linux系统的人,这通操作,简直不要太愉悦了。

image-20211126205900252

如果文件夹文件比较多,大的话,压缩为zip,再拖过去,或许会更好。

如果是zip压缩包,就还需要在服务器安装zip解压软件。安装也很简单,xshell执行

sudo apt-get install unzip 

定位到zip压缩包,执行

unzip ***(压缩包名称).zip

网站文件解压出来后,定位到网站目录,执行

dotnet apptest(一般与项目同名).dll

image-20211126211338373

如果看到网站访问地址,就说明网站已成功启动。至此,算是大功告成。

还没完,难道你就不想看看,一通操作后的结果吗?来看看吧。

访问地址 http://服务器IP:8880

image-20211126212212666

如果觉得对你有帮助,请打赏一下吧
image-dashang

文章来源:https://www.cnblogs.com/zzwen/p/15609631.html

版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
管理员
上一篇:.NET 百万级 大数据插入、更新 ,支持多种数据库
下一篇:C#使用Thrift作为RPC框架入门(三)之三层架构
评论列表

发表评论

评论内容
昵称:
验证码:
验证码
关联文章

步步入门》 .NET 6 部署Linux
步步入门》.NET6Linux下以守护进程方式运行
使用.NET 6开发TodoList应用(30)——实现Docker打包和部署
Linux Open VPN客户端部署
ASP.NET MVC快速入门(一)
C# .net项目Docker方式部署
JAVA环境部署
.net Core项目 IIS部署运行异常信息输出
.NET Core 项目windows server中部署
.NET6中一些常用组件的配置及使用记录,持续更新中。。。
纸壳CMS v3.5升级.Net 6免费下载
Nginx部署
WPF 使用 Silk.NET 进行 DirectX 渲染入门
C# Abp框架入门系列文章(一)
网站迁移纪实:从Web Form Asp.Net Core (Abp vNext 自定义开发)
使用.NET 6开发TodoList应用(31)——实现基于Github Actions和ACI的CI/CD
.Net 6 添加NLog
window server部署open VPN
ASP.NET+MVC入门踩坑笔记 (一) 创建项目 项目配置运行 以及简单的Api搭建
wifnorm处于设计模式校验 (.NET6)

热门标签
.NET Core .NET Reactor ag-grid AI发布 api安全 ASP.NET Core C#DLL加密 C#播放声音 C#代码混淆 C#代码加密 ChromeDriver Codex DateTime DBeaver devexpress devTool DLL混淆 edge.js EF EFCore Electron element-ui el-form el-table excel FastReport FileStream FolderBrowerDialog FolderSelectDialog form提交 git gridcontrol gridview input javascript json字符串 JS转换对象JSON jwt JWT授权 linq log Math MCP mitmproxy MVC MySQL Navicat netstat nginx node_modules NSwag Nuget Nuget镜像 number PowerShell pyinstaller python pythoncom python爬虫 python抓包 pywin32 redis Requests-html RestSharp Selenium sql SQL Server Swagger to-cms Visual Studio VSCode vue VueRouter vue路由 VUE页面通讯 Webpack Windows Windows服务 winform wmi xlrd yaml YESCMS YESWEB开发框架 白象 表单提交 播放声音 打开URL 代码混淆 弹窗提醒 端口占用 对象转换 分布式 公共字典 机器码 进程排查 静态资源 开发指南 路由参数 密钥 配置教程 配置文件 权限 人工智能 任务 任务调度 日期间隔 日志 日志记录 省市区 授权验证 数据库 四舍五入 文案 文件读取 文件夹选择 文件目录选择 问题排查 行政区域数据 页面通讯 中间件 CSharp 事务锁 工单系统 并发控制 重复提交 CMS Markdig Markdown markdown-it marked 技术选型 VS Code 开发工具 源代码管理 版本控制 Docker PostgreSQL 时区 部署排查 CMS架构 EF Core 主题系统 二次开发 插件系统 容器 运维命令 镜像清理 Linux NAS 远程挂载 飞牛 fnOS S/4HANA SAP GUI SAP HANA SAP R/3 SAP入门 SAP版本 ERP SAP SAP MM 库存管理 物料管理 采购管理 入门教程 SAP S/4HANA SPRO 企业结构 采购组织 MM01 物料主数据 物料类型 BP分组 业务伙伴 供应商主数据 ME41 RFQ 库存物料 采购流程 ME51 消耗性物料 科目分配 采购申请 AC03 ML81N 外部服务 服务主数据 Business Partner SAP培训 ME51N MM模块 Lean Services MM-SRV 外部服务采购 PIR 供应来源 采购主数据 采购信息记录 ME31K 框架协议 计划协议 采购合同 ME01 供应来源确定 货源清单 MEQ1 供应源确定 配额安排 配额评分 MD04 MD21 MRP 计划文件 需求计划 批量程序 MD01N MD02 MRP Live MD05 MM 物料计划 优化采购 供应源 采购订单
联系我们
联系电话:15090125178(微信同号)
电子邮箱:garson_zhang@163.com
站长微信二维码
微信二维码