Linux 如何部署安装.NetCore 程序

件准备:  

  XShell:终端模拟器,支持SSH、SFTP、telnet,rlogin和串行。用于window系统远程连接其他不同系统服务器;

  XFtp:Xftp是一个灵活和轻量级SFTP / FTP客户端用户需要安全地通过网络传输文件。它提供了强大的功能,如直接编辑多个窗格,文件夹同步,他们支持,服务器到服务器转移和第三方编辑器集成。

    安装教程:https://blog.csdn.net/HighproX/article/details/51283990

  Linux虚拟机或服务器一台;

开始

1、  将.NetCore代码上传到GitHub或其他代码云托管中

  如果不能上传到GitHub,也可使用XFtp将代码上传到Linux服务器中,如图;

  如果能通过Git拉去代码,则可以在linux服务器中安装git ,使用方式和在Window中没有区别,安装命令 :yum install git

2、  使用XShell登陆Linux服务器,使用教程参考https://blog.csdn.net/HighproX/article/details/51283990

  进入后,使用yum安装相关依赖,我使用的NetCore SDK版本为2.0.3,在服务器中也将安装2.0.3版本,在安装前,请务必先将其他版本的dotnet sdk删除,如果在安装了多个版本SDK,那么在部署的时候会产生一些莫名奇妙的问题;

  开始安装dotnet sdk:https://www.microsoft.com/net/download/linux-package-manager/centos/sdk-2.0.3,实际打开后是英文的,我是通过Chrome浏览器进行翻译过的;

  可通过 dotnet --info 命令来确认dotnet是否安装完成

  

3、此时,dotnet sdk已经安装完成,代码也已经上传到linux服务器,接下来,使用cd 命令,跳转到代码目录下,比如我的代码文件实在 /AliyunGit/***** 目录下,执行 dotnet build -c Release 命令打包代码,然后在执行 dotnet publish -c Release 命令发布代码,这两句命令的作用是打包发布当前目录下的所有NetCore工程,发布后的文件将会在 /工程文件/bin/Release/netcoreapp2.0 下,如果你的sdk是2.1版本,那么netcoreapp2.0就会变成netcoreapp2.1

  

如果不是用XFtp查看,也可使用ls path 或者 ll path命令查看制定目录下所有文件,如果ls 或者 ll 后面不接路径,则表示查看当前目录下所有文件

4、使用cd 进入到netcoreapp2.0目录下,使用 dotnet 工程名称.dll,出现这个也就是说明运行成功,但我们在外网还是访问不了这个网站,需要一个Web容器进行转发;(下图是Copy其他教程的,但是我的运行结果和图中区别只有路径不同)

 初始默认端口为 5000,如果想要更改端口:https://blog.csdn.net/u010584641/article/details/79525535

5、安装Nginx:https://segmentfault.com/a/1190000007116797

6、安装完Nginx后,开始配置 Nginx 的 location ,这个不做多说,我也不是很清楚,连接如下:

  https://moonbingbing.gitbooks.io/openresty-best-practices/ngx/nginx_local_pcre.html
  http://seanlook.com/2015/05/17/nginx-location-rewrite/

  下图是我的项目location配置

  

7、配置完成后,重启Nginx,Service Nginx restart

8、再重复第4步操作;

9、此时我们已经能够在外网中能够访问部署的程序了,基本上上来说,部署算完成了,但是,如果把XShell关闭后,就发现,部署完成的网站又不能访问了,对此,我的理解是,之前所运行的程序只是在前台运行,而没有转入后台运行,类似于 visual studio中的调试状态;我是通过linux的定时任务(crontab命令)解决,大致原理是,编写一个 Shell脚本文件,在脚本文件中判断网站程序是否正在运行,如果没有正在运行则启用(也就是执行第4步操作),然后在通过crontab 定时执行这个 Shell 脚本;

10、Linux 如何定时执行.NetCore程序

原文地址:https://www.cnblogs.com/JETSh/p/9178247.html

时间: 2024-11-02 22:08:56

Linux 如何部署安装.NetCore 程序的相关文章

Linux~centos上安装.netcore,HelloWorld归来!

对于跨平台的.netCore来说,让它的程序运行在Linux系统上已经成为必然,也是一种趋势,毕竟我们的很多服务都放在linux服务器上(redis,mongodb,myql,fastDFS,lucene),而我们希望与这些组件服务通讯,需要使用的代码为java,python等,而这些都不是我们擅长的,因为我们是个.NET工程师,哈哈! 对于.NetCore的出现让我们可以把开始的C#程序运行在其它系统之上了,这种跨平台的特性,当然就成了下一代微软占有市场的利器,当然这也只是个人认为的,下面我们

Linux下部署Java应用程序

Linux软件安装的特点: 1.Linux中没有注册表的概念,因此要想删除某个软件直接删除软件目录就可以了. 2.软件的安装有些需要Linux软件包的支持,在Linux中使用rpm命令管理软件包. 3.Linux中软件安装的过程很迅速,并且软件的运行速度也很快. 4.Linux中权限管理很严格,因此安装时需要对安装介质进行权限配置. 体验Linux下的Java开发 编译器->字节码->(虚拟机)本地机器码->执行 Linux系统与Windows系统最大的区别: Windows路径分隔是&

记录第一次简单部署asp.netcore程序到Docker上

linux版本:centOS7 1.安装docker :yum -y install docker-io 2.安装dontnetcore镜像:docker pull microsoft/dotnet 如果出现 net/http: TLS handshake timeout 安装超时的错误,说明是无法进入docker.hub 解决办法添加国内镜像地址: vim  /etc/sysconfig/docker 打开docker的配置文件, 在OPTIONS上追加 --registry-mirror=h

Linux源码安装部分程序步骤

1.编译安装python3 1.下载python3的源码 cd /opt yum install wget -y 安装wget命令 wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz 1.安装python3之前,环境依赖解决 通过yum安装工具包,自动处理依赖关系,每个软件包通过空格分割 提前安装好这些软件包,日后就不会出现很多坑 得保证这些依赖工具包,正确安装 yum install gcc patch libffi-de

netcore程序部署及守护

一.程序发布 1.在本机编译无误的情况下,选择发布成文件系统.注意如果使用了swagger 需要将生成的xml文档说明复制到发版包里面.否则会报错. 2.发布完成后,使用cmd进入发布的文件版本包所在路径,执行dotnet 你的应用程序的名称.dll 3.如果执行无误,即可向Linux中部署. 二.程序部署 1.目前Linux系统采用的是centos7版本.分别位于服务器127.0.0.85 和86. 2.使用堡垒机登录后,以85为例, 使用SFTP进行文件上传(winscp). 打开SFTP后

Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(二)

原文:Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(二) Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(一) 接上一篇 3. Nginx配置反向代理 3.1 cnetos 安装nginx 首先,我们需要在服务器上安装Nginx.参考网址 3.1.1:添加Nginx存储库 要添加CentOS 7 EPEL仓库,请打开终端并使用以下命令: sudo yum install epel-release EPEL的全称叫 Ex

Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践

原文:Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践 环境 本地 win7 服务器:Virtual Box 上的Centos ssh工具: Xshell 文件传输: xftp 1.在本地创建asp.net core应用发布 1.1 使用Vs2017 新建一个asp.netcore项目 步骤略(一路next),当然你也可以用命令行创建. 1.2 发布项目 在项目路径下执行命令 dotnet publish –c release 先本地运行是否有问题,减少因为本

netcore程序部署到docker

原文:netcore程序部署到docker 1.基础准备 1. ubuntu 18.04 2. docker version 18.09 3. netcore 2.1 2.简介 自从netcore支持跨平台之后,以及现在很多公司都是采用容器化部署,今天在比较空闲的时候学习了一下. 3.使用 3.1 创建netcore 项目  ,选择api程序完成创建 3.2 添加dockerfile 项目右键=>添加=>docker支持,添加成功之后会生成一个dockerfile文件,打开该文件,系统自动生成

mosquitto在Linux环境下的部署/安装/使用/测试

mosquitto在Linux环境下的部署 看了有三四天的的源码,(当然没怎么好好看了),突然发现对mosquitto的源码有了一点点感觉,于是在第五天决定在Linux环境下部署mosquitto. 使用传统源码安装步骤: 步骤1:http://mosquitto.org/files/source/官网下载源码,放到Linux环境中.解压后,找到主要配置文件config.mk,其中包含mosquitto的安装选项,需要注意的是,默认情况下mosquitto的安装需要OpenSSL(一个强大的安全