• 将asp.net core程序部署到Linux服务器上(1)


    公司项目一直都是在window server部署core项目,还是想学习下Linux的部署方式,加上前段时间学习了Linux一些常用知识,一直也在敲。微服务架构中,又学习了Nginx服务器的一些知识。

    今天抽空将这块整合起来。

    1.创建一个测试的asp.net core web api 项目

    项目开发环境和工具:

    Visual Studion 2019

    asp.net core 版本:3.1

    2.准备一台云服务器或者虚拟机

    操作系统版本:Centos 8

     3.安装asp.net core runtime 运行时即可。

     因为我们只是在Linux上去运行我们的asp.net core项目而已,不需要进行开发,sdk太重了。

    sudo yum install aspnetcore-runtime-3.1

     注意:直接安装,不要像其他博主写的还要更新什么的,坑死了。出现各种问题

    没有yum环境,会自动安装。

    不要像下面这样操作:

     

    安装后的页面:

     

     4.使用dotnet和dotnet --info查看信息:

     看到上图说明,已成功安装runtime.

    5.将项目上传到Linux环境上:

    在根目录下创建一个AspNetCoreProjects目录

    使用Xftp将整个项目文件上传至该目录下:

     

     进入到Debug/netcoreapp3.1 启动目录,通过控制台方式启动项目:

    cd /AspNetCoreProjects/AutoMapperWebApiTest/bin/Debug/netcoreapp3.1

    通过ll或者ls查看文件:

     

     通过以下命令,启动该项目:

     dotnet WebApiTest.dll --urls http://*:5008

    大前提:在腾讯云防火墙处,开放5008端口

    在浏览器通过公网IP:port/swagger/index.html  进行访问:

     如果打不开,可能是防火墙开启了。我当前云服务的防火墙默认是关闭的。

    那么如果防火墙开启的话,如何解决?

    查看防火墙状态:

    service firewalld status

    尝试开启防火墙:

    systemctl start firewalld.service

    重新启动项目,发现根本访问不了了。

    现在我们需要将5008端口添加到防火墙中:

    firewall-cmd --zone=public --add-port=5008/tcp --permanent

    然后重启下防火墙:

    firewall-cmd --reload

    再次启动该项目,可以正常访问.

    以上方式是通过控制台方式启动的,窗口关掉就会停止,进程就被kill掉。

    这种方式只是一种演示手段,无法用于实际生产环境。

  • 相关阅读:
    数据标注典型案例,景联文科技如何助力企业搭建数据方案
    白水三佳电脑ERP部署
    Leetcode 940. 不同的子序列 II
    java毕业生设计医院诊疗信息管理计算机源码+系统+mysql+调试部署+lw
    分库分表总结
    go语言实现十大排序算法
    java毕业设计开题报告SSM实现的在线音乐歌曲网站音乐播放器
    HTTP1.1协议详解
    PHP数据类型和运算符
    C语言中的函数
  • 原文地址:https://blog.csdn.net/qq_34550459/article/details/126690502