aspnet core 发布和部署

.Net Core SDK 命令介绍

主要介绍 asp.net core 中,使用 dotnet tools 运行 dotnet run 之后的系统执行过程

dotnet run 介绍

dotnet 相关命令是属于 .NET Core command-line (CLI) 的一部分,Microsoft 为我们提供了这个命令行工具以供我们在开发程序中使用,它主要用来进行对代码的编译、NuGet 包的管理、程序的运行、测试等等。

dotnet 命令目前支持一下操作系统或者 OS 版本:

  • Windows x64
  • Windows x86
  • MacOS
  • RHEL
  • Ubuntu 14.04
  • Ubuntu 16.04
  • Ubuntu 17.04
  • Ubuntu 17.10
  • Debian 8
  • Debian 9
  • Fedora
  • CentOS 7
  • Oracle Linux 7
  • SLES 12
  • openSUSE 24
  • Checksums

下面是 dotnet run 命令在运行程序的时候可以使用的参数列表

dotnet run [--framework] [--configuration] [--project] [--help] [--]

-f, –framework

使用提供的 framework 来运行,这个 framework 就是对应project.json文件中的 frameworks 节点

-c, –configuration [Debug|Release]

配置使用的环境是 Debug 还是 Release,默认为 Debug 模式。

-p, –project [PATH]

指定要运行的项目,它可以是project.json的文件路径,可以是包含project.json的路径,如果没有指定,默认是当前路径。

所以在运行dotnet run命令的时候,如果想偷懒,不想指定 -p参数的话,把命令行的工作目录设定为项目的project.json所在的文件夹路径就可以了。

dotnet run 使用

1、安装

在 http://www.dot.net 站点中,你可以很方便的看到在各个平台之间,dotnet 工具的安装方式。

打开 http://www.dot.net , 选择 .Net Core 然后 Step by Step 就可以了。

2、创建一个Hello World
你可以使用dotnet new命令来创建一个控制台的 Hello World

3、编译和运行
使用dotnet run会帮你进行编译和运行 Hello World 程序。

dotnet run 执行过程

已经知道了 dotnet 其实 CLI 里面的是一个命令行工具集中的一个命令。并且也已经会使用 dotnet run来运行我们的应用程序了,那么它内部是如何执行的呢?

dotnet run命令是依赖于dotnet build命令的,在运行 run 命令之前,系统会在内部调用 build 命令来生成代码,在运行 dotnet build 命令的时候,首先会检测程序中是否存在bin 文件夹,如果不存在就会创建它,然后把生成的文件放到 bin文件夹。然后 obj 文件夹中会存放程序生成的临时文件。

有一点需要注意的是dotnet run 命令的执行环境为项目程式代码的上下文,而不是 bin 或者 obj 文件夹,如果你需要运行一个 dll 程序,使用 dotnet 命令:dotnet xxx.dll,而不是 dotnet run xxx.dll

如何使用 Nginx 进行部署

参考文章 https://www.cnblogs.com/savorboard/p/dotnet-core-publish-nginx.html

如何在 Jexus 中进行部署

参考文章 https://www.cnblogs.com/savorboard/p/dot-net-linux-jexus.html

如何在 Docker 中进行部署

参考文章 https://www.cnblogs.com/savorboard/p/dotnetcore-docker.html

如何在 Linux 下创建守护进程(必备知识)

参考文章 https://www.cnblogs.com/savorboard/p/dotnetcore-supervisor.html