ABP 是 .NET 平台中很成熟的快速开发框架。早期,该框架基于 ASP.NET, 只能运行在 Windows 中。 这几年,随着 .NET Core 跨平台开发环境的成熟,ABP 也逐渐转为基于 .NET Core, 提供多平台开发、部署的能力。 本文演示如何在 Linux (Ubuntu 18.04 Server) 中发布、部署基于 ABP 框架的应用。
环境准备
首先需要在 Linux 中安装 .NET Core SDK, 如果这部分不熟悉,可以参照这篇文章
其次,要准备一个基于 ABP Framework 的应用, 这里我们简单的使用 ABP 的官方样例 - Acme.BookStore。
如果你还不没有该样例,也可以简单的执行以下命令来构建该案例:
- 安装 ABP Cli 工具
1 | dotnet tool install -g Volo.Abp.Cli |
- 构建案例项目
1 | abp new Acme.BookStore --ui none -mobile none |
这里,我们不生成 UI 和 mobile 项目,因为那些与 ABP 后台发布基本没关系。
构建并发布应用
在演示中,假设需要将应用发布到 ~/app 目录中。 所以,首先我们建立该目录
1 | mkdir ~/app |
然后进入刚才建立的 Acme.BookStore 项目目录中, 在进入到 Acme.BookStore.Http.Api.Host 目录中,执行
1 | dotnet restore -nowarn:msb3202.nu1503 |
以解决项目的依赖库。 然后构建并发布应用,执行:
1 | dotnet build --no-restore -c Release -o ~/app |
经过一段时间的构建后,我们就可以在 ~/app 目录看到结果: 应用程序及其依赖的包(DLL)都在该目录下。
可以执行以下命令来启动应用
1 | dotnet Acme.BookStore.HttpApi.Host.dll |