您好,登錄后才能下訂單哦!
如何在Linux中部署一個.net core Api項目?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
1..net開發環境:asp.net core 3.1
2.Linux環境:CentOS Linux release 7.9.2009 (Core)
3.Swagger: Swashbuckle.AspNetCore6.0
4.開發工具:VS2019,xShell7,xFtp7
選擇上面的工具--》NuGet包管理器--》管理解決方案的管理包
搜索Swashbuckle.AspNetCore,并安裝即可
Swashbuckle.AspNetCore
找到項目的中Startup.cs 文件,修改內容如下:
代碼如下:
public void ConfigureServices(IServiceCollection services) { services.AddSwaggerGen(options => { options.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" }); // 獲取xml文件名 var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml"; // 獲取xml文件路徑 var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile); // 添加控制器層注釋,true表示顯示控制器注釋 options.IncludeXmlComments(xmlPath, true); }); services.AddControllers(); } // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } //啟用中間件服務生成Swagger作為JSON終結點 app.UseSwagger(c=> { c.PreSerializeFilters.Add((doc,item)=> { doc.Servers = new List<OpenApiServer> { new OpenApiServer{ Url=$"{item.Scheme}://{item.Host.Value}/{item.Headers["X-Forwarded-Prefix"]}" } }; }); }); //啟用中間件服務對swagger-ui,指定Swagger JSON終結點 app.UseSwaggerUI(c => { c.ShowExtensions(); c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1"); c.DocExpansion(DocExpansion.None); c.RoutePrefix = string.Empty; //如果跟目錄顯示SwaggerUI加上這句 }); app.UseHttpsRedirection(); app.UseRouting(); app.UseAuthorization(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); }
首先啟動項目,之后會生成一個Demo1.xml文件,如下圖所示,單擊文件Demo.xml文件,修改復制到輸出目錄: 如果較新則復制
選擇項目名稱,右鍵選擇發布
選擇文件夾,之后選擇下一步,選擇完成即可。
點擊發布按鈕即可
使用Xftp軟件,把本地發布的文件上傳到Linux系統中
到此,API已經創建,也上傳到服務器了。
使用Xshell工具,連接到我們的Linux操作系統,使用cd path 命令進入到之前上傳的文件夾中。
進入目錄:cd /home/www/test
查看文件列表:ls
輸入命令:dotnet Demo1.dll,如下圖所示,這是成功的在Linux中啟動了我們發布的API項目。
192.168.6.130:把你Linux的IP替換我的這個192.168.6.130,在訪問
在你的瀏覽器中輸入:http://192.168.6.130:5000/index.html
關于如何在Linux中部署一個.net core Api項目問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。