.Net Core 部署到 SUSE 16 Linux Enterprise Server 12 SP2 64 位中的步骤

1、安装工具

1、apache

2、.Net Core(dotnet-sdk-2.0)

3、Supervisor(进程管理工具,目的是服务器一开机就启动服务器 上发布的ASP.NET Core Web网站)

2、安装apache

安装apache,在命令行终端中输入一下命令:

sudo zypper in apache

(注意这个与ubuntun中的添加不一样,

buntun中sudo apt-get install apache2 )

(注:查看apache 版本 sudo apachectl -v)

安装完成,开始启动

重启apache服务(设置两项,1是可用,2是启动)

可用:sudo systemctl enable apache2.service

(注意这个与ubuntun中的添加不一样,

buntun中sudo /etc/init.d/apache2 restart )

启动:sudo systemctl start apache2.service

在浏览器里输入http://localhost或者是http://127.0.0.1,如果看 到了It works!,那就说明Apache就成功的安装了,Apache的默认文档根目录是在SUSE上的/srv/www/htdocs/目录 ,如果出现403页面拒绝访问错误,原因是没有index.html导致,添加一个index.html文件即可,添加index.html文件之后,重新刷新浏览器,显示添加内容ok。

注意:添加文件需要权限,所以通过

命令 sudo chmod a+w /srv/www/htdocs/ 授权,这样就可以添加index.html初始页了,

备注:配置文件是/etc/apache2/httpd.conf。

配置存储在的/etc/apache2/conf.d /目录。

3、安装.NET Core 2.0

1、注册Linux系统(Suse SLES 12 X64)

sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc

sudo sh -c 'echo -e "[packages-microsoft-com-prod]\nname=packages-microsoft-com-prod \nbaseurl= https://packages.microsoft.com/yumrepos/microsoft-rhel7.3-prod\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/zypp/repos.d/dotnetdev.repo'

2、更新安装包,安装.NET Core

sudo zypper update

sudo zypper install libunwind libicu

sudo zypper install dotnet-sdk-2.1.4

注意安装过程中出现解决方案选择,选择 2 。

4、查看一下 dotnet --version  结果是  2.1.4 则说明安装成功。

(注:简单的应用程序项目文件夹,使用以下命令启动网站,只要打开发布网站的文件,右键终端中打开 dotnet run或者dotnet xx.dll,即可运,xx为网站的名称)

sudo dotnet xxx.dll

然后就可以在浏览器打开localhost:5000(5000为默认端口,如果有修改,请使用实际IP和端口访问(mmps的端口设置的是8080))

注意:如果外网无法访问8080端口的话,设置如下

1、sudo chmod a+w /etc/sysconfig/SuSEfirewall2 #授编辑权限

2、vi SuSEfirewall2 或者直接打开SuSEfirewall2文件进行编辑

3、编辑内容:在文件SuSEfirewall2中找到FW_SERVICES_EXT_TCP,在其后面加上服务名或者是服务对应的端口,如SSH,
FW_SERVICES_EXT_TCP=”ssh” 或 FW_SERVICES_EXT_TCP=”22″ 或者FW_SERVICES_EXT_TCP=”8080″,如果要开放多个端口则为 FW_SERVICES_EXT_TCP=”8080 89″ #多个端口用空格分开,保存之后退出。

4、重启防火墙,以使配置生效,
  sudo rcSuEfirewall2 restart

到此位置基本就实现了通过IP访问,然而每次关机以后,重新开机都需要去手动的启动发布的网站项目才能访问,因此我们下面使用Supervisor托管自动启动网站服务操作,保证每次只要一开机,网站就可以正常。
3、安装Supervisor(设置开机自动设置网站)

1、右键在终端中打开,输入安装命令:

安装python

sudo zypper in python-pip

sudo pip install -U setuptools

pip install supervisor

2、安装完成之后,创建相关文件,

echo_supervisord_conf > supervisord.conf

sudo  mkdir /etc/supervisor

sudo  mkdir /etc/supervisor/conf.d

sudo cp supervisord.conf  /etc/supervisor/supervisord.conf

注:1、supervisord.conf中的 /tmp换成相应的/var/run或者 /var/log

(使用sudo chmod a+w etc/supervisor/supervisord.conf 就可以打开进行编辑了,/tmp换成相应的/var/run或者 /var/log替换之后,保存)

2、把supervisord.conf中的

;[include]节点处

;files = relative/directory/*.ini

换成

[include]

files = /etc/supervisor/conf.d/*.conf

3、配置文件,取名为 MmPSCore.conf (当前项目的名称)

sudo touch /etc/supervisor/conf.d/MmPScore.conf (自定义项目名称,本项目是MmPScore.conf)

打开MmPSCore.conf写入如下命令(如果没有权限,

请如下方法

sudo chmod a+w /etc/supervisor/conf.d/MmPScore.conf(命令启动编辑)

命令内容如下:

[program:MmPSCore]

command=dotnet MmPSCore.dll #要执行的命令(发布网站执行文件)

directory=/home/xx/MmPSCore#命令执行的目录(发布网站文件路径)environment=ASPNETCORE__ENVIRONMENT=Production #环境变量

user=www-data #进程执行的用户身份(可能需要去掉)

stopsignal=INT

autostart=true #是否自动启动

autorestart=true #是否自动重启

startsecs=1 #自动重启间隔

user=root ; #进程执行的用户身份(可以不写)

stderr_logfile=/var/log/TestCore.err.log #标准错误日志

stdout_logfile=/var/log/TestCore.out.log #标准输出日志

//注:#后面的内容为注释,在保存上面的文件代码时,记得删除

上述操作完后,保存,

运行supervisord,查看是否生效,执行以下命令:

supervisord -c /etc/supervisor/ supervisord.conf

(执行这一句报错:Cannot open an HTTP server: socket.error reported errno.EACCES (13),解决这个错误方法:sudo chmod 777 /run )

ps -ef | grep ProjectName

返回

root 27007 27006  1 13:21 ?  00:00:02 dotnet ProjectName.dll

root 27026 26810 0 13:23 pts/0 00:00:00 grep --color=auto ProjectName

表示运行成功!

如果有错误的话,建议执行下面的命令

这个两句命令很重要

sudo supervisord -c /etc/supervisor/supervisord.conf

sudo supervisorctl -c /etc/supervisor/supervisord.conf

4、配置supervisord开机启动

  1. 在指定目录下创建文件supervisord.service

sudo touch /usr/lib/systemd/system/supervisord.service

sudo chmod a+w /usr/lib/systemd/system/supervisord.service

B.输入以下内容:

[Unit]

Description=Supervisor daemon

[Service]

Type=forking

ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf

ExecStop=/usr/bin/supervisorctl shutdown

ExecReload=/usr/bin/supervisorctl reload

KillMode=process

Restart=on-failure

RestartSec=42s

[Install]

WantedBy=multi-user.target

保存并退出

C.执行以下命令:设置开机启动

systemctl enable supervisord

提示:

Created symlink from /etc/systemd/system/multi-user.target.wants/supervisord.service to /usr/lib/systemd/system/supervisord.service.

D.验证是否为开机启动:

systemctl is-enabled supervisord

提示:

enabled

表示设置成功!

至此,创建supervisor守护进程完毕。

备注:

设置开机启动命令  systemctl enable supervisord.service

启动supervisor进程  systemctl start supervisord.service

关闭supervisor进程  systemctl stop supervisord.service

5、测试

接下来重启机器,在浏览器中输入IP地址,看看网站是否跟随开机自动运行。

ASP.NET Core 2.0 MVC 发布部署--------- SUSE 16 Linux Enterprise Server 12 SP2 X64 具体操作的更多相关文章

  1. ASP .Net Core系统部署到SUSE 16 Linux Enterprise Server 12 SP2 64 具体方案

    .Net Core 部署到 SUSE 16 Linux Enterprise Server 12 SP2 64 位中的步骤 1.安装工具 1.apache 2..Net Core(dotnet-sdk ...

  2. ASP.NET Core 2.0 MVC 发布部署--------- Ubuntun 16.04 X64 具体操作

    .Net Core 部署到Ubuntu 16.04 中的步骤 1.安装工具 1.apache 2..Net Core(dotnet-sdk-2.0) 3.Supervisor(进程管理工具,目的是服务 ...

  3. [亲测]ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问

    前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...

  4. [亲测]七步学会ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问

    前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...

  5. ASP.NET Core 2.0 MVC 发布部署--------- ASP.NET Core 发布的具体操作

    ASP.NET Core 发布的具体操作 下面使用C# 编写的ASP.NET Core Web项目示例说明发布的全过程. 1.创建项目 选择“文件” > “新建” > “项目”. 在“添加 ...

  6. ASP.NET Core 2.0 MVC 发布部署--------- CentOS7 X64 具体操作

    .Net Core 部署到 CentOS7 64 位系统中的步骤 1.安装工具 1.apache 2..Net Core(dotnet-sdk-2.0) 3.Supervisor(进程管理工具,目的是 ...

  7. ASP.NET Core 2.0 MVC 发布部署--------- IIS 具体操作

    .Net Core 部署到 IIS系统中的步骤 一.IIS 配置 启用 Web 服务器 (IIS) 角色并建立角色服务. 1.Windows Ddesktop 桌面操作系统(win7及更高版本) 导航 ...

  8. ASP.NET Core 2.0 MVC 发布部署--------- linux安装.NET CORE SDK具体操作链接以及操作总细节

    具体链接:https://www.microsoft.com/net/learn/get-started/linuxubuntu 如下图:

  9. 无法下载apk等格式的文件的解决方案---ASP .NET Core 2.0 MVC 发布到IIS上以后无法下载apk等格式的文件的解决方案

    ASP .NET Core MVC 发布到  IIS 上以后 无法下载apk等格式的文件 使用.NET Core MVC创建了一个站点,其他文件可以下载,但是后来又需求,就把手机端的apk合适的文件上 ...

随机推荐

  1. Argus UVALive - 3135(优先队列 水题一道)

    有一系列的事件,它每Period秒钟就会产生编号为qNum的事件,你的任务是模拟出前k个事件,如果多个事件同时发生,先处理qNum小的事件 今天再看看数据结构.. #include <iostr ...

  2. 【刷题】洛谷 P3806【模板】点分治1

    题目背景 感谢hzwer的点分治互测. 题目描述 给定一棵有n个点的树 询问树上距离为k的点对是否存在. 输入输出格式 输入格式: n,m 接下来n-1条边a,b,c描述a到b有一条长度为c的路径 接 ...

  3. 【BZOJ3771】Triple(生成函数,多项式运算)

    [BZOJ3771]Triple(生成函数,多项式运算) 题面 有\(n\)个价值\(w\)不同的物品 可以任意选择\(1,2,3\)个组合在一起 输出能够组成的所有价值以及方案数. \(n,w< ...

  4. bzoj2089&2090: [Poi2010]Monotonicity

    双倍经验一眼题... f[i][1/2]表示以i结尾,当前符号应该是</>的最长上升子序列, 用BIT优化转移就好 =的话就不用说了吧= = #include<iostream> ...

  5. 【BZOJ 4449】[Neerc2015]Distance on Triangulation 多边形分治结构

    这题好神啊……正解方向是分治,据我所知的分治方法有:I.离线后直接对多边形以及所有的询问进行分治 II.建立多边形的分治结构(对于三角形来说类似线段树,对于对角线来说类似平衡树),然后每次在这个分治结 ...

  6. 解决SQL Server 2008 64位系统无法导入Access/Excel的问题

    最近更换了新服务器,操作系统Windows Server 2008 X64,数据库SQL Server 2008 X64,Office 2007(好像只有32位),在存储过程执行OpenDatasou ...

  7. Weblogic安装与配置图文详解

    Weblogic是什么Weblogic的安装Weblogic创建域Weblogic管理域Weblogic的应用Weblogic是什么 Weblogic这是我入职以后第一次接触到的词汇,我很陌生,就从我 ...

  8. cmd窗口关闭 -----window小技巧!

    前沿 平时开发的时候经常用到windows  的命令行工具来启动程序  或是 查看本地数据库的信息 : 经常的手动关闭 ,对于我这种,能用键盘完成的就坚决不用鼠标的人是多么痛苦. 所以在此罗列了一些命 ...

  9. PHP扩展--vld查看opcode代码

    vld安装 wget http://pecl.php.net/get/vld-0.13.0.tgz tar zxvf vld-0.13.0.tgz cd vld-0.13.0 /usr/local/p ...

  10. SSO的几种跨域方案

    在此只是记录一下自己在尝试SSO跨域实现的过程中学到的几种跨域方案,不包含任何例子和具体的实现方法. 最近在尝试SSO的跨域,看了好多资料,然后自己记录了一下可以实现的方法: ①跳转所有站点设置coo ...