.NET Core 部署到CentOS–2.创建守护进程, 通过Nginx公网访问
继上一篇, 我们确定在内网可以通过 “http://localhost:5000”,可以访问到站点后,接下来我们要配置“守护进程”,“Nginx公网80端口访问”
1. 守护进程配置
a) 创建kestrel-hellomvc.service 文件
sudo vim /etc/systemd/system/kestrel-hellomvc.service
b) 粘贴以下内容
[Unit]
Description=Example .NET Web API Application running on CentOS[Service]
WorkingDirectory=/var/aspnetcore/hellomvc
ExecStart=/usr/local/bin/dotnet /var/aspnetcore/hellomvc/hellomvc.dll
Restart=always
RestartSec=10 # Restart service after 10 seconds if dotnet service crashes
SyslogIdentifier=dotnet-example
User=www-data
Environment=ASPNETCORE_ENVIRONMENT=Production[Install]
WantedBy=multi-user.target
c) 保存配置文件
:wq
d) 通过systemctl 管理服务
#启动守护进程
sudo systemctl start kestrel-hellomvc.service
#开机启动
sudo systemctl enable kestrel-hellomvc.service
-------------------------------------------------------------
常用命令
#启动进程
systemctl start ???
#停止进程
systemctl stop ???
#重新加载
systemctl reload ???
#状态
systemctl status ???
#开机启动
systemctl enable ???
#禁止开机启动
systemctl disable ???
d) 测试
有看到这句就是运行中了
PS: “www-data”CentOS无此用户,记得要先创建好,分配好权限
sudo useradd –M –s /sbin/nologin www-data
sudo chown www-data:root /var/aspnetcore/hellomvc
2. Nginx配置
a) 安装 nginx
sudo yum install nginx
b) 启动 nginx
sudo systemctl start nginx
sudo systemctl enable nginx
c) 配置反向代理
sudo vim /etc/nginx/sites-available/default
erver {
listen 80;
location / {
proxy_pass http://localhost:5000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}d) 重启反向代理
sudo systemctl reload nginx
e) 外网访问
PS: 如果访问不到,请检查防火墙是否开启,是否开放了80端口:
# 查看当前端口监听列表
netstat –tln
# 查看firewalld状态
sudo systemctl status firewalld
# 启动firewalld
sudo systemctl start firewalld
# 开机启动firewalld
sudo systemctl enable firewalld
# 查看80端口是否开放
firewall-cmd --query-port=80/tcp
# 开放80端口(—permanent 表示永久开放)
firewall-cmd --permanent --add-port=80/tcp
上一篇: .NET Core 部署到CentOS–1.创建项目,简单部署
下一篇: .NET Core 部署到CentOS–3.supervisord守护进
参考资料:
https://docs.microsoft.com/en-us/aspnet/core/publishing/linuxproduction
https://linux.cn/article-5926-1.html
.NET Core 部署到CentOS–2.创建守护进程, 通过Nginx公网访问的更多相关文章
- .NET Core 部署到CentOS–1.创建项目,简单部署
开发环境:Windows 10,部署环境:阿里云 CentOS 7.3 1. 创建应用 1) 创建项目, 配置应用生成部署包 2) 配置项目 编辑project.json, 追加环境项, 选项可参考这 ...
- .NET Core 部署到CentOS–3.supervisord守护进
1. 安装 sudo yum install python-setuptoolssudo easy_install supervisor 2. 配置 安装成功后,输入supervisord 会显示配置 ...
- ASP.NET Core Linux下为 dotnet 创建守护进程(必备知识)
前言 在上篇文章中介绍了如何在 Docker 容器中部署我们的 asp.net core 应用程序,本篇主要是怎么样为我们在 Linux 或者 macOs 中部署的 dotnet 程序创建一个守护进程 ...
- ASP.ENT Core Linux 下 为 donet创建守护进程(转载)
原文地址:http://www.cnblogs.com/savorboard/p/dotnetcore-supervisor.html 前言 在上篇文章中介绍了如何在 Docker 容器中部署我们的 ...
- Supervisor 为服务创建守护进程
今天需要再服务上部署一个.net 方面的项目:当时开启服务的命令只能在前台执行:使用nohub CMD &等放在后台开启服务都会宕机:所以搜寻了Supervisor 这个解决办法,为服务创建守 ...
- 创建守护进程步骤与setsid() -- linux deamon进程
原创:http://www.cnblogs.com/mickole/p/3188321.html 一,守护进程概述 Linux Daemon(守护进程)是运行在后台的一种特殊进程.它独立于控制终端并且 ...
- linux创建守护进程
守护进程deamon 是一个后台进程,无需用户输入就能运行,用来在系统后台提供某种服务. 常见的守护进程有Wbe服务器.邮件服务器以及数据库服务器等等.守护进程不能控制终端,所以任何的输入和输出都需要 ...
- Python中创建守护进程
python 创建守护进程 python 的os.setdid()提供了类似linux c api的 setsid 也可以通过unix双fork创建守护进程. 几个相关的函数 os.umask(0) ...
- linux 创建守护进程的相关知识
linux 创建守护进程的相关知识 http://www.114390.com/article/46410.htm linux 创建守护进程的相关知识,这篇文章主要介绍了linux 创建守护进程的相关 ...
随机推荐
- Python中dataframe\ array\ list相互转化
import pandas as pd import numpy as np #创建列表 a1=[1,2,3] #arange函数:指定初始值.终值.步长来创建数组 a2=np.arange(0,1, ...
- kuangbin专题16B(kmp模板)
题目链接: https://vjudge.net/contest/70325#problem/B 题意: 输出模式串在主串中出现的次数 思路: kmp模板 在 kmp 函数中匹配成功计数加一, 再令 ...
- powershell 操作sharepoint命令集
打开SharePoint 2013 Management Shell, and then run as administrator.执行如下命令 1. 添加wsp和安装Add-SPSolution - ...
- 在使用jquery时,(e.target).closest("li")是什么意思
今天在群里有童鞋问以下代码中: $(function(){ $(document).bind("click", function (e) { $(e.target).closest ...
- CF671A Recycling Bottles 计算几何
It was recycling day in Kekoland. To celebrate it Adil and Bera went to Central Perk where they can ...
- POJ1059 Chutes and Ladders
题目来源:http://poj.org/problem?id=1059 题目大意: 有一种叫做“Chutes and Ladders”(梯子和滑梯)的简单游戏.游戏在一块棋盘上进行,棋盘上有编号从1- ...
- 执行umount 的时候却提示:device is busy 的处理方法
[root@web2-server yum.repos.d]# umount /mnt/cdrom/ umount: /mnt/cdrom: device is busy. (In some case ...
- Diophantus of Alexandria
Diophantus of Alexandria was an egypt mathematician living in Alexandria. He was one of the first ma ...
- Educational Codeforces Round 13 C
Description Little Joty has got a task to do. She has a line of n tiles indexed from 1 to n. She has ...
- python 基础及if while for语句
#####变量######一.命名规则 1.正常命名 可以由字母,下划线和数字组成,不能以数字开头,不能和关键字重明 2.驼峰命名法 1)大驼峰:每一个单词的首字母都大写 Fi ...


