liunx系统发布.net core项目

news/2024/5/19 23:07:05 标签: .netcore

liunx系统发布.net core项目

    • 准备.net6程序运行环境
    • 部署nginx,通过一个地址既能访问web api,又能访问web项目
    • 有一个客户把web api放到docker中,想通过nginx转发,nginx也支持配置多个程序api接口的
    • 其它

liunx系统:centos-7u6-x86_64
项目框架:.net6
没有wget命令,先安装wget

yum install -y wget

准备.net6程序运行环境

  • 添加 Microsoft 包存储库,将 Microsoft 包签名密钥添加到受信任密钥列表,并添加 Microsoft 包存储库。 打开终端并运行以下命令:
rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm
  • .NET SDK 使你可以通过 .NET 开发应用。 如果安装 .NET SDK,则无需安装相应的运行时。 若要安装 .NET SDK,请运行以下命令:
yum install dotnet-sdk-6.0
  • 通过 ASP.NET Core 运行时,可以运行使用 .NET 开发且未提供运行时的应用。 以下命令将安装 ASP.NET Core 运行时,这是与 .NET 最兼容的运行时。 在终端中,运行以下命令:
yum install aspnetcore-runtime-6.0
  • 使用终端查看当前安装的 .NET SDK 版本,请运行以下命令:
dotnet --list-sdks
  • 把Web API程序文件发布到指定目录下,执行运行命令:
dotnet Organization.Order.ApiSolution.dll --urls http://*:8888

在这里插入图片描述

  • 把Web项目发布到指定目录下,执行运行命令:
dotnet Organization.Order.Web.dll --urls http://*:6888

在这里插入图片描述

部署nginx,通过一个地址既能访问web api,又能访问web项目

  • cd进入路径/usr/local/,下载nginx
wget -c http://nginx.org/download/nginx-1.24.0.tar.gz
  • 找到nginx压缩包解压
tar -zxvf nginx-1.24.0.tar.gz
  • 解压后,CD进入nginx-1.24.0目录
cd /usr/local/nginx-1.24.0
  • 通过–prefix指定nginx安装目录
./configure --prefix=/usr/local/nginx

遇到报错“./configure: error: C compiler cc is not found”
执行命令:yum -y install gcc gcc-c++ autoconf automake make

  • 安装编译nginx
make & make install
  • 启动Nginx和查看nginx运行状态
    在这里插入图片描述
    nginx相关命令如下:
#启动脚本是在
# /usr/local/nginx/sbin/nginx
#启动,
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
#停止
/usr/local/nginx/sbin/nginx -s stop
#重载
/usr/local/nginx/sbin/nginx -s reload
#杀掉nginx
/usr/local/nginx/sbin/nginx -s quit
#查看nginx是否启动
ps -ef | grep nginx

#查看已放行的端口
firewall-cmd --list-all
#将80端口加入到防火墙放行白名单中,并重载防火墙
firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --reload

#临时关闭防火墙
systemctl stop firewalld.service
#永久关闭防火墙
systemctl disable firewalld.service

#设置nginx开启自启
vim /etc/rc.local
#文本底部追加
/usr/local/nginx/sbin/nginx
  • 编辑nginx配置文件nginx.conf
#打开ginx的配置文件,编辑
vi /usr/local/nginx/conf/nginx.conf
#退出不保存
Esc -> :q!
#保存退出
Esc -> :wq
#保存不退出
Esc -> :w

#查看linux系统ip地址
ifconfig
ip addr
ip address
ip addr show
ip address show

指定nginx反向代理地址,访问web网站
在这里插入图片描述

指定nginx接口请求地址,转发接口请求
在这里插入图片描述
由于修改了nginx配置文件,重新启动nginx

#停止
/usr/local/nginx/sbin/nginx -s stop
#启动,
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
  • 最后效果
    web地址:
    在这里插入图片描述
    web api地址:
    在这里插入图片描述
    通过nginx转发:
    web:
    在这里插入图片描述
    web api:
    在这里插入图片描述

有一个客户把web api放到docker中,想通过nginx转发,nginx也支持配置多个程序api接口的

docker部署:https://blog.csdn.net/qq_41863998/article/details/131222630

docker run --name orders -p 50001:88 order

在这里插入图片描述

修改nginx.conf文件
在这里插入图片描述
效果:
web:
在这里插入图片描述
api web api:
在这里插入图片描述

order web api :
在这里插入图片描述

其它

操作liunx系统工具:Xshell
链接:https://pan.baidu.com/s/1_h37zJIwcWUxDePVz9JzZg 
提取码:kp36

http://www.niftyadmin.cn/n/5479827.html

相关文章

3款一键生成原创的AI工具,为文案写作而生

在当今数字化时代,人工智能技术的快速发展给各行各业带来了许多便利和创新。特别是在文案写作领域,AI工具的出现为写作者们提供了全新的可能性,让创作变得更高效、更灵感迸发。在本文中,我们将介绍三款一键生成原创内容的AI工具&a…

python中返回四个参数,但只想接收3个,使用下划线_

def example_function():return 1, 2, 3, 4# 接收前三个返回值,忽略第四个 value1, value2, value3, _ example_function()在这个例子中,value1、value2、value3 将分别接收函数返回的前三个值,而第四个返回值会被赋值给 _,表示我…

多维 HighCharts

1&#xff1a;showHighChart.html <!DOCTYPE html> <html lang"zh-CN"><head><meta charset"UTF-8"><!-- js脚本都是官方的,后两个是highchart脚本 --><script type"text/javascript" src"jquery1.7.1.mi…

第23次修改了可删除可持久保存的前端html备忘录:增加了百度引擎

第22次修改了可删除可持久保存的前端html备忘录视频背景分离&#xff0c;增加了本地连接&#xff0c;增加了纯CSS做的折叠隐藏修改说明 <!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8"><meta name"viewport…

day7:哈希表学习

● 454.四数相加II ● 383. 赎金信 ● 15. 三数之和 ● 18. 四数之和 总结 对于查&#xff0c;某个元素是否在集合中出现过&#xff0c;哈希法是非常高效的方法 但是对于需要去重的情况下&#xff0c;哈希法要注意太多细节&#xff0c;很难完美写完&#xff0c;因此采用双指针…

IP地址定位技术在各领域的作用

IP地址定位是通过确定IP地址的物理位置来定位一个设备的技术&#xff0c;它在现代社会的多个领域中都有着广泛的应用。以下将详细探讨IP地址定位的应用场景&#xff0c;以期对读者有所启发。 首先&#xff0c;在网络安全领域&#xff0c;IP地址定位发挥着至关重要的作用。网络…

MySQL调优时需要注意的问题

MySQL调优是一个复杂且细致的过程&#xff0c;涉及到数据库设计、查询优化、系统配置、硬件资源等多个方面。 在进行MySQL调优时&#xff0c;需要注意以下问题及示例&#xff1a; 查询优化&#xff1a; 避免全表扫描&#xff1a; 示例&#xff1a;一个查询语句没有有效利用索引…

2.Go的基本语法-指针、结构体、Map

1.指针 1.1.常规定义 func test24() {var a int 10var b *intb &afmt.Printf("a 的 值%d\n", a)fmt.Printf("a 的 指针地址%x\n", &a)fmt.Printf("b 的 值%d\n", *b)fmt.Printf("b 的 指针地址%x\n", b)打印var c *string…