1. 确认第二步中的软件已安装完成
      1. lrzsz文件上传下载软件
      2. zip与unzip压缩包软件
      3. net core 相关软件
      4. 确认上述软件安装完成之后,开始部署程序
    2. 创建部署文件夹
      1. 我的习惯是在usr文件夹下新建publish文件夹,然后在publish文件夹中各创建各个程序对应的文件夹,在文件夹下back和front分别来存放前端和后端部署程序
      2. 由当前所在文件夹,进入usr文件夹
        1. 查看当前所在文件夹 

        2. 进入usr文件夹 : cd /usr

      3. 创建publish文件夹,并查看文件夹是否创建成功
        1. 创建publish文件夹 :  sudo mkdir publish

        2. 查看文件夹是否创建成功 : ls

      4. 进入publish文件夹,并创建project1文件夹
        1. 进入publish文件夹 : cd publish/(可输入 cd publ ,然后按下tab键,系统会自动提示相关信息,按下两下tab键,系统会显示所有提示信息)
        2. 创建project1文件夹 : sudo mkdir project1
        3. 查看project1文件夹是否创建成功 : ls
      5. 进入project1文件夹,创建前后端部署文件夹
        1. 进入project1文件夹 : cd project1
        2. 创建前端部署包文件夹 : mkdir front
        3. 创建后端部署包文件夹 : mkdir back
        4. 查看front和back文件夹是否创建成功 : ls
    3. 上传部署程序压缩包
      1. 输入文件上传指令,开始上传文件
        1. 进入back文件夹 : cd /usr/publish/project1/back
        2. 上传文件 : sudo rz

        3. 弹出上传文件框

        4. 查看文件上传进度

      2. 确认文件是否上传成功
        1. 查看back文件夹下是否上传成功部署包 : ls

    4. 解压缩部署包
      1. 解压文件,查看文件是否解压成功
        1. 执行解压文件指令 : sudo unzip project1_p_back.zip

        2. 查看文件是否解压成功 : ls

    5. 部署租户平台后端程序
      1. 进入dll所在的文件夹,目前我这边解压之后就已经是dll的文件夹了,如果不是则需要进入到对应的文件夹
      2. 查看、编辑和保存配置文件
        1. 查看配置文件,此处以appsettings.Production.json为例 : sudo vi appsettings.Production.json

        2. 如果配置文件不正确,则需要编辑文件 : 输入 i 

        3. 键盘移动光标到相应的位置,进行内容修改,修改完成后,按下esc键,退出文件编辑

        4. 输入 :wq,进行文件的保存

        5. 如果不需要修改文件,直接输入 :q 即可退出文件的查看

        6. 如果提示文件是只读情况,则输入 :q!,退出文件编辑保存,执行sudo chmod a+w appsettings.Production.json(chmod是修改文件访问属性的指令,a+w表示可读可写,后面加文件名字)
        7. 修改完文件访问属性后,重新执行第一个步骤
      3. 执行程序启动指令
        1. 指令介绍 :
          (1). setsid :  帮助一个进程脱离从父进程继承而来的已打开的终端、隶属进程组和隶属的会话
          (2). dotnet : 启动dotnet程序,可以是web程序,console程序,webapi程序等等
          (3). GaiaWorks.project1Platform.WebApi.dll : 要启动的程序,紧跟dotnet指令之后,可以是web程序,console程序,webapi程序等等
          (4). --server.urls : 表示设置要启动的程序的地址和端口号
          (5). http://0.0.0.0:8010 : 0.0.0.0表示是本地ip地址,8010表示程序启动所需占用的端口号,紧跟--server.urls指令之后
          (6). --environment : 表示要启动程序的环境
          (7). Production : 表示启动的是Production环境,紧跟--environment之后,该值可以使Production,也可以是Staging或者Quality环境等等
          (8). & : 表示启动此程序并加入后台进程
        2. 执行指令 : sudo setsid dotnet GaiaWorks.project1Platform.WebApi.dll --server.urls http://0.0.0.0:8010 --environment="Production" &
      4. 查看指令运行结果以及程序启动结果
        1. 输入查看程序启动的指令 : sudo netstat -lntp

        2. 进程界面介绍
          (1). 0.0.0.0:8010 : 表示启动的程序的地址以及端口号
          (2). 0.0.0.0:* : 远程地址
          (3). Listen : 当前进程的状态
          (4). 127013/dotnet : 当前程序占用的进程号以及启动程序的名称
        3. 如果需要关闭程序,则执行删除指令即可 , 再查看时,程序已停止: sudo kill -9 127013

    6. 查看部署结果
      1. 查看本地地址 : sudo ifconfig -a
        1. 执行ip地址查看指令 : sudo ifconfig -a

      2. 在外部浏览器访问程序的swagger,确认是否部署成功
        1. 在浏览器中输入swagger地址 : http://192.168.64.128:8010/docs
      3. 执行OpenApi中的接口,确认能够获取到数据
        1. 执行接口 OpenApi → /api/v1/products : 看能够获取到数据

.Net Core 在Linux服务器下部署程序--(3). 部署.net Core程序的更多相关文章

  1. .Net Core 在Linux服务器下部署程序--(2). 部署前需要安装的软件及SDK

    安装通用软件 : ping , telnet , lrzsz , zip , wget 安装ping软件,用于测试当前服务器与其他服务器之间的网络通畅情况,和Windows的Ping类似 执行ping ...

  2. .Net Core 在Linux服务器下部署程序--(4). 前端ReactWeb应用部署

    确认第二步中的软件已经安装完成 Nodejs前端Web服务器 Zip与UnZip压缩包软禁 nrm前端包源管理器 PM2前端Web程序守护进程 创建部署文件夹 如果已经执行过( 3. 租户平台后端程序 ...

  3. .Net Core 在Linux服务器下部署程序--(3). 部署.net core 后端程序

    确认第二步中的软件已安装完成 lrzsz文件上传下载软件 zip与unzip压缩包软件 net core 相关软件 确认上述软件安装完成之后,开始部署程序 创建部署文件夹 我的习惯是在usr文件夹下新 ...

  4. .Net Core 在Linux服务器下部署程序--(1). Windows 连接 Linux服务器

    下载Linux服务器连接软件,市面上有Putty,FinalShell等,我以FinalShell为例,下载地址为 :http://www.hostbuf.com/t/988.html,软件安装结束后 ...

  5. linux服务器下添加字体

    版权声明:本文为楼主原创文章,未经楼主允许不得转载,如要转载请注明来源. 引言:这两天在开发一个动态生成海报的东西(图片拼接,图片水印),开发在windows下没有问题,图片和文字都能正常的生成出来. ...

  6. 用linux服务器下的/dev/shm/来释放磁盘的压力

    巧用linux服务器下的/dev/shm/来释放磁盘的压力 浏览:646 | 更新:2013-06-18 18:08 | 标签: 磁盘 tmpfs是Linux/Unix系统上的一种基于内存的文件系统. ...

  7. Linux服务器下对Oracle作Rman备份

    由于工作需要,最近要对几台Linux系统下的Oracle数据库进行Rman备份,就在操作的同时,整理了一下,方便今后作为资料进行查阅. ------------------------Linux服务器 ...

  8. 在linux服务器下日志提取的python脚本(实现输入开始时间和结束时间打包该时间段内的文件)

    1.需求:近期在提取linux服务器下的日志文件时总是需要人工去找某个时间段内的日志文件,很是枯燥乏味,于是乎,我就想着用python结合linux指令来写一个日志提取的脚本,于是就有了以下脚本文件: ...

  9. Linux 服务器下多网卡的负载均衡

    Linux 服务器下多网卡负载均衡的实现   一.引言    现今几乎各行各业内部都建立了自己的服务器,由于服务器的特殊地位,它的可靠性.可用性及其 I/O 速度就显得非常的重要, 保持服务器的高可用 ...

随机推荐

  1. K3数据字典备查

    select distinct f.FNumber as 系统代码, f.FName AS 系统名称,  d.FTableName AS 表名,d.FDescription AS 表说明,a.[nam ...

  2. 数据库原理 - 序列3 - 事务是如何实现的? - Redo Log解析

    6.5 事务实现原理之1:Redo Log 介绍事务怎么用后,下面探讨事务的实现原理.事务有ACID四个核心属性:A:原子性.事务要么不执行,要么完全执行.如果执行到一半,宕机重启,已执行的一半要回滚 ...

  3. Luogu P5285 [十二省联考2019]骗分过样例

    Preface ZJOI一轮被麻将劝退的老年选手看到这题就两眼放光,省选也有乱搞题? 然后狂肝了3~4天终于打完了,期间还补了一堆姿势 由于我压缩技术比较菜,所以用的都是非打表算法,所以一共写了5K- ...

  4. Luogu P5292 [HNOI2019]校园旅行

    非常妙的一道思博题啊,不愧是myy出的题 首先我们考虑一个暴力DP,直接开一个数组\(f_{i,j}\)表示\(i\to j\)的路径能否构成回文串 考虑直接拿一个队列来转移,队列里存的都是\(f_{ ...

  5. Fork/Jion框架详解

    ◆Fork/Jion框架可以干什么◆ 如果你要处理1万条数据,但是你的能力暂时还不够,一个简单快捷的办法就是你可以把每次只处理100条,等到处理100次之后再把所有的结果聚合起来你就处理完了这1万条数 ...

  6. 【Python篇】---Python3.5在Centoos的安装教程--超实用

    一.前述 Python3在公司用的还是比较多的,但一般Centoos默认是python2的环境.所以本文就python3的安装做个总结. 二.具体 1.查看python版本python 命令即可 2. ...

  7. 混淆矩阵、准确率、精确率/查准率、召回率/查全率、F1值、ROC曲线的AUC值

    准确率.精确率(查准率).召回率(查全率).F1值.ROC曲线的AUC值,都可以作为评价一个机器学习模型好坏的指标(evaluation metrics),而这些评价指标直接或间接都与混淆矩阵有关,前 ...

  8. golang的cms

    golang的cms 说说cms cms(内容管理系统)是建站利器.它的本质是为了快速建站.cms本质是一个后台服务站,使用这个后台,能很快搭建一个前台web站.在PHP的世界里面,CMS框架简直不要 ...

  9. 一次composer错误使用引发的思考

    一次composer错误使用引发的思考 这个思考源自于一个事故.让我对版本依赖重新思考了一下. 事故现象 一个线上的管理后台,一个使用laravel搭建的管理后台,之前在线上跑的好好的,今天comop ...

  10. PyQt:自定义QLineEdit禁止选中复制粘贴

    说明 自定义的QLineEdit,当输入文本之后,禁止选中复制粘贴等操作 实现方法 MyQLineEdit类继承了QLineEdit类,并重写QLineEdit类中的mouseMoveEvent方法和 ...