本文先安裝 .net 5.0 的環(huán)境,再創(chuàng)建一個(gè)示例項(xiàng)目并發(fā)布至 CentOS 上,同時(shí)列明了一些注意的點(diǎn);最后將 dotnet 命令添加到系統(tǒng)自啟動(dòng)服務(wù)。
本文將詳細(xì)介紹在CentOS 7上部署WebAPI項(xiàng)目的過(guò)程。首先,我們會(huì)介紹如何在CentOS 7上安裝.net 5.0環(huán)境,然后創(chuàng)建示例項(xiàng)目并將其發(fā)布至CentOS服務(wù)器。最后,我們將討論如何將dotnet命令添加到系統(tǒng)自啟動(dòng)服務(wù)。
本文主要介紹了在 CentOS 7 上部署 WebAPI 項(xiàng)目的過(guò)程。先安裝 .net 5.0 的環(huán)境,再創(chuàng)建一個(gè)示例項(xiàng)目并發(fā)布至 CentOS 上,同時(shí)列明了一些注意的點(diǎn);最后將 dotnet 命令添加到系統(tǒng)自啟動(dòng)服務(wù)。
首先,配置倉(cāng)庫(kù):
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 命令時(shí),會(huì)出現(xiàn)報(bào)錯(cuò)【sudo: dnf: command not found】
# 這個(gè)錯(cuò)誤表明你的系統(tǒng)中沒(méi)有安裝 dnf 包管理器,可以手動(dòng)安裝 dnf 的支持:sudo yum install dnf
直接執(zhí)行命令:
sudo dnf install dotnet-sdk-5.0
查看當(dāng)前版本:dotnet --version;查看詳情:dotnet --info。
[root@localhost ~]# dotnet --info
.NET SDK (reflecting any global.json):
Version: 5.0.408
Commit: da985e2a23
...
下面簡(jiǎn)單創(chuàng)建一個(gè)測(cè)試項(xiàng)目:WebAPI.WebApplication.Test。
選項(xiàng)(Enable OpenAPI support)選中,默認(rèn)添加對(duì) swagger 框架的支持。
直接運(yùn)行起來(lái),看下目標(biāo)效果:
選擇發(fā)布至文件系統(tǒng):
然后找到發(fā)布文件夾:(需要將此文件夾中的文件全部上傳至 CentOS 服務(wù)器)
WebAPI.WebApplication.Test\bin\Release\net5.0\publish
上傳至 CentOS 的 /home/webapi.test 文件夾中,備用。(上傳方法就略過(guò)了)
首先,在 Startup.cs 文件中將 Swagger 的配置放出來(lái):
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
// 如下兩行,原來(lái)在 if 里邊,放到外邊,就無(wú)論是什么環(huán)境都可加載 Swagger
app.UseSwagger();
app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "WebAPI.WebApplication.Test v1"));
...
另外,文件 launchSettings.json,注意如下備注的兩個(gè)配置項(xiàng):
{
"$schema": "http://json.schemastore.org/launchsettings.json",
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:25863",
"sslPort": 0
}
},
...
使用 dotnet 命令直接開(kāi)啟服務(wù)試試:
dotnet /home/webapi.test/WebAPI.WebApplication.Test.dll -server.urls "http://*:5000" --environment Development
在 /etc/systemd/system/ 路徑下,新增一個(gè) webapi.test.service 文件,文件內(nèi)容如下:
# Unit 文件描述,webapi 為服務(wù)文件名
[Unit]
Description=weapi.test service
...
操作服務(wù)的相關(guān)命令:
# 啟動(dòng)
systemctl start xxx.service
# 查看當(dāng)前狀態(tài)
systemctl status xxx.service
# 重新啟動(dòng)
systemctl restart xxx.service
# 查看所有已啟動(dòng)的服務(wù)
systemctl list-units --type=service
...
最后,可以執(zhí)行 reboot 命令,重啟服務(wù)器后,對(duì)服務(wù)進(jìn)行驗(yàn)證。
參考: https://blog.51cto.com/u_15050718/4565015
小編推薦閱讀
如何使用 Pytorch 中的 DataSet 和 DataLoader
閱讀golang slice相關(guān)常見(jiàn)的性能優(yōu)化手段
閱讀連接Elasticsearch服務(wù)器的Python代碼示例
閱讀國(guó)產(chǎn)操作系統(tǒng)上實(shí)現(xiàn)RTMP推流攝像頭視頻和麥克風(fēng)聲音到流媒體服務(wù)器
閱讀使用Python讀取和導(dǎo)出NetCDF格式的多時(shí)相柵格文件
閱讀多租戶(hù)系統(tǒng)數(shù)據(jù)權(quán)限設(shè)計(jì)與RuoYi系統(tǒng)的借鑒
閱讀count(*)、count(1)哪個(gè)更快?面試必問(wèn):通宵整理的十道經(jīng)典MySQL必問(wèn)面試題
閱讀從需求分析、產(chǎn)品設(shè)計(jì)到部署交付各階段說(shuō)明
閱讀如何利用七牛云進(jìn)行數(shù)據(jù)備份和刪除
閱讀強(qiáng)化學(xué)習(xí)筆記之【ACE:Off-PolicyActor-CriticwithCausality-AwareEntropyRegularization】
閱讀使用MailKit在.NET Core中收發(fā)郵件的完整示例
閱讀WiFi基礎(chǔ)(六):天線(xiàn)基礎(chǔ)知識(shí)
閱讀本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請(qǐng)發(fā)郵件[email protected]
湘ICP備2022002427號(hào)-10 湘公網(wǎng)安備:43070202000427號(hào)© 2013~2024 haote.com 好特網(wǎng)