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

- 进入usr文件夹 : cd /usr

- 查看当前所在文件夹
- 创建publish文件夹,并查看文件夹是否创建成功
- 创建publish文件夹 : sudo mkdir publish

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

- 创建publish文件夹 : sudo mkdir publish
- 进入publish文件夹,并创建project1文件夹
- 进入publish文件夹 : cd publish/(可输入 cd publ ,然后按下tab键,系统会自动提示相关信息,按下两下tab键,系统会显示所有提示信息)
- 创建project1文件夹 : sudo mkdir project1
- 查看project1文件夹是否创建成功 : ls
- 进入publish文件夹 : cd publish/(可输入 cd publ ,然后按下tab键,系统会自动提示相关信息,按下两下tab键,系统会显示所有提示信息)
- 进入project1文件夹,创建前后端部署文件夹
- 进入project1文件夹 : cd project1
- 创建前端部署包文件夹 : mkdir front
- 创建后端部署包文件夹 : mkdir back
- 查看front和back文件夹是否创建成功 : ls

- 上传部署程序压缩包
- 输入文件上传指令,开始上传文件
- 进入back文件夹 : cd /usr/publish/project1/back
- 上传文件 : sudo rz

- 弹出上传文件框

- 查看文件上传进度

- 进入back文件夹 : cd /usr/publish/project1/back
- 确认文件是否上传成功
- 查看back文件夹下是否上传成功部署包 : ls

- 查看back文件夹下是否上传成功部署包 : ls
- 输入文件上传指令,开始上传文件
- 解压缩部署包
- 解压文件,查看文件是否解压成功
- 执行解压文件指令 : sudo unzip project1_p_back.zip

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

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

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

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

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

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

- 如果提示文件是只读情况,则输入 :q!,退出文件编辑保存,执行sudo chmod a+w appsettings.Production.json(chmod是修改文件访问属性的指令,a+w表示可读可写,后面加文件名字)
- 修改完文件访问属性后,重新执行第一个步骤
- 查看配置文件,此处以appsettings.Production.json为例 : sudo vi appsettings.Production.json
- 执行程序启动指令
- 指令介绍 :
(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). & : 表示启动此程序并加入后台进程 - 执行指令 : sudo setsid dotnet GaiaWorks.project1Platform.WebApi.dll --server.urls http://0.0.0.0:8010 --environment="Production" &

- 指令介绍 :
- 查看指令运行结果以及程序启动结果
- 输入查看程序启动的指令 : sudo netstat -lntp

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

- 输入查看程序启动的指令 : sudo netstat -lntp
- 查看部署结果
- 查看本地地址 : sudo ifconfig -a
- 执行ip地址查看指令 : sudo ifconfig -a

- 执行ip地址查看指令 : sudo ifconfig -a
- 在外部浏览器访问程序的swagger,确认是否部署成功
- 在浏览器中输入swagger地址 : http://192.168.64.128:8010/docs

- 在浏览器中输入swagger地址 : http://192.168.64.128:8010/docs
- 执行OpenApi中的接口,确认能够获取到数据
- 执行接口 OpenApi → /api/v1/products : 看能够获取到数据

- 执行接口 OpenApi → /api/v1/products : 看能够获取到数据
- 查看本地地址 : sudo ifconfig -a
.Net Core 在Linux服务器下部署程序--(3). 部署.net Core程序的更多相关文章
- .Net Core 在Linux服务器下部署程序--(2). 部署前需要安装的软件及SDK
安装通用软件 : ping , telnet , lrzsz , zip , wget 安装ping软件,用于测试当前服务器与其他服务器之间的网络通畅情况,和Windows的Ping类似 执行ping ...
- .Net Core 在Linux服务器下部署程序--(4). 前端ReactWeb应用部署
确认第二步中的软件已经安装完成 Nodejs前端Web服务器 Zip与UnZip压缩包软禁 nrm前端包源管理器 PM2前端Web程序守护进程 创建部署文件夹 如果已经执行过( 3. 租户平台后端程序 ...
- .Net Core 在Linux服务器下部署程序--(3). 部署.net core 后端程序
确认第二步中的软件已安装完成 lrzsz文件上传下载软件 zip与unzip压缩包软件 net core 相关软件 确认上述软件安装完成之后,开始部署程序 创建部署文件夹 我的习惯是在usr文件夹下新 ...
- .Net Core 在Linux服务器下部署程序--(1). Windows 连接 Linux服务器
下载Linux服务器连接软件,市面上有Putty,FinalShell等,我以FinalShell为例,下载地址为 :http://www.hostbuf.com/t/988.html,软件安装结束后 ...
- linux服务器下添加字体
版权声明:本文为楼主原创文章,未经楼主允许不得转载,如要转载请注明来源. 引言:这两天在开发一个动态生成海报的东西(图片拼接,图片水印),开发在windows下没有问题,图片和文字都能正常的生成出来. ...
- 用linux服务器下的/dev/shm/来释放磁盘的压力
巧用linux服务器下的/dev/shm/来释放磁盘的压力 浏览:646 | 更新:2013-06-18 18:08 | 标签: 磁盘 tmpfs是Linux/Unix系统上的一种基于内存的文件系统. ...
- Linux服务器下对Oracle作Rman备份
由于工作需要,最近要对几台Linux系统下的Oracle数据库进行Rman备份,就在操作的同时,整理了一下,方便今后作为资料进行查阅. ------------------------Linux服务器 ...
- 在linux服务器下日志提取的python脚本(实现输入开始时间和结束时间打包该时间段内的文件)
1.需求:近期在提取linux服务器下的日志文件时总是需要人工去找某个时间段内的日志文件,很是枯燥乏味,于是乎,我就想着用python结合linux指令来写一个日志提取的脚本,于是就有了以下脚本文件: ...
- Linux 服务器下多网卡的负载均衡
Linux 服务器下多网卡负载均衡的实现 一.引言 现今几乎各行各业内部都建立了自己的服务器,由于服务器的特殊地位,它的可靠性.可用性及其 I/O 速度就显得非常的重要, 保持服务器的高可用 ...
随机推荐
- [ArcGIS API for JavaScript 4.8] Sample Code-Popups-1-popupTemplate的概念和popup中属性字段值的多种表现形式
[官方文档:https://developers.arcgis.com/javascript/latest/sample-code/intro-popuptemplate/index.html] 一. ...
- Docker 创建 Crucible4.6.1 以及与 Crowd3.3.2 实现 SSO 单点登录
目录 目录 1.介绍 1.1.什么是 Crucible? 2.Crucible 的官网在哪里? 3.如何下载安装? 4.对 Crucible 进行配置 4.1.破解 Crucible 第一步 4.2. ...
- 《Python黑客编程之极速入门》正式开课
玄魂 玄魂工作室 今天 之前开启了一个<Python黑客编程>的系列,后来中断了,内容当时设置的比较宽,不太适合入门.现在将其拆分成两个系列<Python黑客编程之极速入门>和 ...
- Java Socket聊天室编程(二)之利用socket实现单聊聊天室
这篇文章主要介绍了Java Socket聊天室编程(二)之利用socket实现单聊聊天室的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下 在上篇文章Java Socket聊天室编程(一)之 ...
- C#类型(一)
1.System.Object C#的所有类型都是派生自System.Object 也就是说下面的两个类型定义完全一致 // 隐式派生自Object public class Person{ } { ...
- 自己整理的所有java知识点(不断迭代中)
1. 自己整理的所有java知识点(不断迭代中) 画图工具注册 https://www.processon.com/i/599d35fae4b00d97d7f9bb17 1.1. Java整体知识架构 ...
- .NET Core TDD 前传: 编写易于测试的代码 -- 单一职责
第1篇: 讲述了如何创造"缝". "缝"(seam)是需要知道的概念. 第2篇, 避免在构建对象时写出不易测试的代码. 第3篇, 依赖项和迪米特法则. 第4篇 ...
- javascript ES6 新特性之 扩展运算符 三个点 ...
对于 ES6 新特性中的 ... 可以简单的理解为下面一句话就可以了: 对象中的扩展运算符(...)用于取出参数对象中的所有可遍历属性,拷贝到当前对象之中. 作用类似于 Object.assign() ...
- SQLI LABS Advanced Part(23-37) WriteUp
继续继续!这里是高级部分! less-23: 提示输入id参数,尝试: ?id=1' and '1 返回的结果与?id=1相同,所以可以直接利用了. ?id=1' order by 5# 可是页面返回 ...
- javascript 作用域链及闭包,AO,VO,执行环境
下面的文章内容会根据理解程度不断修正. js变量作用域: 定义:变量在它申明的函数体以及函数体内嵌套的任意函数体内有定义. function AA(){ var bb='我是AA内部变量'; func ...