netcore程序部署及守护
一.程序发布
1.在本机编译无误的情况下,选择发布成文件系统。注意如果使用了swagger 需要将生成的xml文档说明复制到发版包里面。否则会报错。(可以在项目的csproj 中加入
<PropertyGroup>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
</PropertyGroup>
)解决发布的时候不会自动生成xml文件。
2.发布完成后,使用cmd进入发布的文件版本包所在路径,执行dotnet 你的应用程序的名称.dll
3.如果执行无误,即可向Linux中部署。
二.程序部署
1.目前Linux系统采用的是centos7版本。分别位于服务器127.0.0.85 和86.
2.使用堡垒机登录后,以85为例, 使用SFTP进行文件上传(winscp)。 打开SFTP后, 我们在/home/qappsom 下建立文件夹 比如命名为”MyService”
3.复制我们本地的发版包代码至我们在上述中创建的文件里。
4.在确认复制无误的情况下,此时使用SSH登录Linux服务器。
5.执行一下命令:su root 密码为:123456
6.执行 cd /home/qappsom/MyService/
7.执行命令 dotnet MyService.dll
在上述一切操作无误的情况下说明我们的程序在Linux上部署成功。
三.使用supervisor进行守护
- 使用命令 cd /etc/supervisor/conf.d/
- 使用 ll 命令查看该目录下有哪些配置文件。比如有 3个文件
- 这时候我们复制一个supervisor守护程序的配置文件。比如使用命令 cp productdetailservice.conf myservice.conf
- vim myservice.conf
以下是我我们原来 productdetailservice.conf 配置 只要我们进行一下修改
[program:ProductDetailService]
command=dotnet Joying.Mall.ProductDetailService.API.dll
directory=/home/qappsom/ProductDetailService/
environment=ASPNETCORE__ENVIRONMENT=Production
user=root
stopsignal=INT
autostart=true
autorestart=true
startsecs=3
stderr_logfile=/var/log/productdetailservice.err.log
stdout_logfile=/var/log/productdetailservice.out.log
以上红色字体就是我们自己程序的配置文件需要修改的地方。
program:MyService --这个名字可以自己去取
command 就是我们程序启动的命令。
directory 就是我们程序的路径。 stderr_logfile,stdout_logfile 这个就是我们在启动supervisor启动的时候错误日志位置。
编辑完成后按键盘的Esc键 然后输入:wq 完成保存(备注:q!不保存退出)
5.执行命令supervisorctl
6.执行命令update
此时在浏览器中输入127.0.0.1.85:9001 用户名user 密码123
就会看见自己的服务
7.如果没有看见自己的服务,重启一下supervisor ,分别执行命令
systemctl stop supervisord.service
systemctl start supervisord.service
netcore程序部署及守护的更多相关文章
- netcore程序部署 ubuntu 16.0.4 报错 The type initializer for 'System.Net.Http.CurlHandler'的解决方案
最近业务扩展需要把netcore程序部署到ubuntu 16.0.4上,因为代码里面用到了HttpClient 请求. 部署ubuntu后一直报错 参考地址:https://github.com/do ...
- netcore程序部署到docker
1.基础准备 1. ubuntu 18.04 2. docker version 18.09 3. netcore 2.1 2.简介 自从netcore支持跨平台之后,以及现在很多公司都是采用容器化部 ...
- netcore程序部署 docker 异常 --生成图片二维码缺少libdl
最近因业务需求需要在程序中实现二维码图片生成,于是就用到QRCoder开发库.最终在windows环境下部署运行没问题,但切换到docker(centos7.0)后发现是有问题的. 错误信息提示:Th ...
- .NetCore程序在Linux上面部署的实现
我们知道.NetCore能够实现跨平台的根本就是内置Kestrel服务器实现请求处理和不同操作系统上反向代理的实现.在windows操作系统上IIS反向代理配置非常简单.但是Linux上就较为麻烦了. ...
- Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(二)
Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(一) 接上一篇 3. Nginx配置反向代理 3.1 cnetos 安装nginx 首先,我们需要在服务器上安装N ...
- jenkins + supervisor + ansible 实现netcore程序的多机一键部署
上一篇我们简单的说到了使用jenkins+supervisor实现了一个单机版的多副本部署,但是在更多的场景下还是需要netcore程序的多机一键部署,那么多 机器间如何分发呢? 肯定不能使用scp这 ...
- Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(一)
环境 本地 win7 服务器:Virtual Box 上的Centos ssh工具: Xshell 文件传输: xftp 1.在本地创建asp.net core应用发布 1.1 使用Vs2017 新建 ...
- 使用PowerShell自动部署ASP.NetCore程序到IIS
Windows PowerShell 是一种命令行外壳程序和脚本环境,使命令行用户和脚本编写者可以利用 .NET Framework的强大功能.有关于更多PowerShell的信息,可参阅百度词条 接 ...
- Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践
原文:Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践 环境 本地 win7 服务器:Virtual Box 上的Centos ssh工具: Xshell 文件传输 ...
随机推荐
- 在类文件中创建 写入Json文件
由于业务需要 今天写了一个方法能够定时更新Json文件 即定时从数据库中查询数据 然后转化为Json对象 如果有数据的话 删掉之前的Json文件 重新创建一个文件 然后写入Json对象 中间走了很多弯 ...
- 定时器&改变定时器的执行频率
static System.Threading.Timer timer; static void Main(string[] args) { Console.WriteLine("Press ...
- 数据分析三剑客之一numpy
NumPy系统是Python的一种开源的数值计算扩展.这种工具可用来存储和处理大型矩阵. 可以用python实现的科学计算包括: 1.一个强大的N维数组对象Array: 2.比较成熟的(广播)函数库: ...
- python之元组及其方法---整理集
元组: 区别:与列表类似,是对列表的二次加工:用小括号包括起来:元素不可修改:不可增加.删除 技巧:创建元组的时候,一般在最后一个元素后面加一个逗号:为了与方法区分:并且这个逗号不算元素例如: tu= ...
- 解决Oracle数据库空间不足问题
//查询表空间的大小以及文件路径地址select tablespace_name, file_id, file_name,round(bytes/(1024*1024),0) total_space ...
- jmeter-用户定义的变量
添加-配置元件-用户定义的变量 请求中出现变量值的位置,用${_tbip}替换 脚本执行完成,在查看结果树中debug sampler中可以看见变量名和变量值
- 29. Divide Two Integers (JAVA)
Given two integers dividend and divisor, divide two integers without using multiplication, division ...
- jquery 中dataTable显示加载中,图片或文字
引入js文件 <script type="text/javascript" src="${basePath}/lib/datatables/1.10.0/jquer ...
- python 基础 ----- 常用的方法
one.将英文字符设置大小写 upper() :将英文字符设置大写 lower() :将英文字符设置小写 two.去掉字符串的首尾空格 不能去除字符串中间的空格偶 strip() : 去掉 ...
- java代码实现简单的认证——图片验证码形式
前言:认证在互联网中会经常见到,其主要作用是安全问题中防止恶意破解.刷票等.在系统开发中认证的实现也有很多种,什么手机短信认证,邮箱认证等.在这里我使用最基本的验证码的形式进行认证,下面例出过程. 验 ...