您的位置:首頁 > 軟件教程 > 教程 > 在CentOS 7上部署WebAPI項目的詳細步驟

在CentOS 7上部署WebAPI項目的詳細步驟

來源:好特整理 | 時間:2024-08-31 10:23:15 | 閱讀:99 |  標(biāo)簽: a T Net Pi API 項目 S C in linux   | 分享到:

本文先安裝 .net 5.0 的環(huán)境,再創(chuàng)建一個示例項目并發(fā)布至 CentOS 上,同時列明了一些注意的點;最后將 dotnet 命令添加到系統(tǒng)自啟動服務(wù)。

本文將詳細介紹在CentOS 7上部署WebAPI項目的過程。首先,我們會介紹如何在CentOS 7上安裝.net 5.0環(huán)境,然后創(chuàng)建示例項目并將其發(fā)布至CentOS服務(wù)器。最后,我們將討論如何將dotnet命令添加到系統(tǒng)自啟動服務(wù)。

〇、前言

本文主要介紹了在 CentOS 7 上部署 WebAPI 項目的過程。先安裝 .net 5.0 的環(huán)境,再創(chuàng)建一個示例項目并發(fā)布至 CentOS 上,同時列明了一些注意的點;最后將 dotnet 命令添加到系統(tǒng)自啟動服務(wù)。

一、Linux 環(huán)境準(zhǔn)備

1.1 CentOS 7.x 在線安裝 .net 5.0

首先,配置倉庫:

sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm
sudo yum install dotnet-sdk-5.0 -y
sudo dnf install dotnet-runtime-5.0 -y
# 使用 dnf 命令時,會出現(xiàn)報錯【sudo: dnf: command not found】
# 這個錯誤表明你的系統(tǒng)中沒有安裝 dnf 包管理器,可以手動安裝 dnf 的支持:sudo yum install dnf

1.2 CentOS 8.x 在線安裝 .net 5.0

直接執(zhí)行命令:

sudo dnf install dotnet-sdk-5.0

1.3 查看是否安裝成功

查看當(dāng)前版本:dotnet --version;查看詳情:dotnet --info。

[root@localhost ~]# dotnet --info
.NET SDK (reflecting any global.json):
 Version:   5.0.408
 Commit:    da985e2a23
...

二、示例項目創(chuàng)建和發(fā)布

2.1 創(chuàng)建一個測試項目

下面簡單創(chuàng)建一個測試項目:WebAPI.WebApplication.Test。

在CentOS 7上部署WebAPI項目的詳細步驟

選項(Enable OpenAPI support)選中,默認(rèn)添加對 swagger 框架的支持。

在CentOS 7上部署WebAPI項目的詳細步驟

直接運行起來,看下目標(biāo)效果:

在CentOS 7上部署WebAPI項目的詳細步驟

2.2 發(fā)布步驟

選擇發(fā)布至文件系統(tǒng):

在CentOS 7上部署WebAPI項目的詳細步驟

然后找到發(fā)布文件夾:(需要將此文件夾中的文件全部上傳至 CentOS 服務(wù)器)

WebAPI.WebApplication.Test\bin\Release\net5.0\publish

在CentOS 7上部署WebAPI項目的詳細步驟

上傳至 CentOS 的 /home/webapi.test 文件夾中,備用。(上傳方法就略過了)

三、服務(wù)開啟和配置自啟動

3.1 服務(wù)開啟

首先,在 Startup.cs 文件中將 Swagger 的配置放出來:

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    if (env.IsDevelopment())
    {
        app.UseDeveloperExceptionPage();
    }
    // 如下兩行,原來在 if 里邊,放到外邊,就無論是什么環(huán)境都可加載 Swagger
    app.UseSwagger();
    app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "WebAPI.WebApplication.Test v1"));
...

另外,文件 launchSettings.json,注意如下備注的兩個配置項:

{
  "$schema": "http://json.schemastore.org/launchsettings.json",
  "iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iisExpress": {
      "applicationUrl": "http://localhost:25863",
      "sslPort": 0
    }
  },
...

使用 dotnet 命令直接開啟服務(wù)試試:

 dotnet /home/webapi.test/WebAPI.WebApplication.Test.dll -server.urls "http://*:5000" --environment Development

3.2 將服務(wù)配置為系統(tǒng)自啟動

在 /etc/systemd/system/ 路徑下,新增一個 webapi.test.service 文件,文件內(nèi)容如下:

# Unit 文件描述,webapi 為服務(wù)文件名
[Unit]
Description=weapi.test service
...

操作服務(wù)的相關(guān)命令:

# 啟動
systemctl start xxx.service
# 查看當(dāng)前狀態(tài)
systemctl status xxx.service
# 重新啟動
systemctl restart xxx.service
# 查看所有已啟動的服務(wù)
systemctl list-units --type=service
...

最后,可以執(zhí)行 reboot 命令,重啟服務(wù)器后,對服務(wù)進行驗證。

參考: https://blog.51cto.com/u_15050718/4565015

在CentOS 7上部署WebAPI項目的詳細步驟

小編推薦閱讀

好特網(wǎng)發(fā)布此文僅為傳遞信息,不代表好特網(wǎng)認(rèn)同期限觀點或證實其描述。

a 1.0
a 1.0
類型:休閑益智  運營狀態(tài):正式運營  語言:中文   

游戲攻略

游戲禮包

游戲視頻

游戲下載

游戲活動

《alittletotheleft》官網(wǎng)正版是一款備受歡迎的休閑益智整理游戲。玩家的任務(wù)是對日常生活中的各種雜亂物
項目 1.0.2.24
項目 1.0.2.24
類型:休閑益智  運營狀態(tài):正式運營  語言: 英文   

游戲攻略

游戲禮包

游戲視頻

游戲下載

游戲活動

《項目》(.projekt)是游戲商StampedeGames制作的一款新型簡約益智游戲。.projekt要求你以不同的方式看

相關(guān)視頻攻略

更多

掃二維碼進入好特網(wǎng)手機版本!

掃二維碼進入好特網(wǎng)微信公眾號!

本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請發(fā)郵件[email protected]

湘ICP備2022002427號-10 湘公網(wǎng)安備:43070202000427號© 2013~2024 haote.com 好特網(wǎng)