第一种方式

(1) nginx配置中只写前端项目的/根路径配置

前端项目使用的Dockerfile文件内容

把前端项目编译后生成的dist文件夹放在nginx的html默认目录下,浏览器访问前端项目时加上这个前端目录名

(2) 前端项目中直接写后端项目访问的http地址

(3) k8s配置中需要添加俩ingress规则

一个是使用网址访问前端项目的,一个是使用网址访问后端项目的

(4)整体访问路径

浏览器 --> nginx前端地址根路径  --> 后端ingress地址
浏览器(比如:账号密码登录) --> 后端ingress地址

第二种方式

(1) nginx配置中不仅写前端项目的/根路径配置,还会写前端访问后端的地址路径配置

前端项目使用的Dockerfile文件内容

把前端项目编译后生成的dist文件夹放在nginx的html默认目录下,浏览器访问前端项目时加上这个前端目录名

nginx配置中多增加一个访问后端的配置

(2) 前端项目中直接写后端项目访问的http地址

(3) k8s配置中只需要添加一个前端的ingress规则

(4)整体访问路径

浏览器 --> nginx前端地址根路径  --> 后端ingress地址
(比如:账号密码登录)
|
|--> nginx后端地址路径 --> 后端ingress地址

方法一和方法二的比较

(1) 除了都需要给前端项目配置一个ingress规则外,方法一需要给后端项目配置一个ingress地址,方法二不需要

(2) nginx配置中除了都需要配置前端项目路径外,方法二还需要配置后端项目地址,使用后端在k8s中部署的服务名的方式,方法一不需要

(3) 额外的考虑

方法一的nginx配置可以直接给其他前端项目使用,也就是说所有的前端项目使用统一的一个nginx.conf配置

方法二的则不行,每一套前后端项目都需要在前端nginx.conf中添加相应的配置,项目多的话配置会显得nginx.conf配置臃肿且不好管理

方法一需要额外添加一个后端的ingress规则,这样对后端服务的访问来说是不是有点不安全,毕竟可以直接访问使用,而方法二访问后端服务,需要通过使用nginx进行代理访问,安全性上是不是更好一些?

方法一和方法二的后端假如副本数都超过1,则前端访问使用的话,应该都是通过使用ingress规则自带的负载均衡 轮询的方式来访问使用的吧

在k8s中部署前后端分离项目进行访问的两种配置方式的更多相关文章

  1. centos7部署前后端分离项目的过程

    概述 本文主要讲解在安装了centos7的Linux主机中部署前后端分离项目的过程. 前端项目名为:vue_project:后端项目名为:django_project. 将这两个项目放在/opt/wh ...

  2. linux --- 部署前后端分离项目

    vue + uwsgi +nginx 部署前后端分离项目 准备项目 1.将前端vue项目包和后端django项目包上传服务器,通过lrzsz,直接从windows拖进linux中 2.解压缩操作 前端 ...

  3. 使用 Nginx 部署前后端分离项目,解决跨域问题

    前后端分离这个问题其实松哥和大家聊过很多了,上周松哥把自己的两个开源项目部署在服务器上以帮助大家可以快速在线预览(喜大普奔,两个开源的 Spring Boot + Vue 前后端分离项目可以在线体验了 ...

  4. 在centos7.6上部署前后端分离项目Nginx反向代理vue.js2.6+Tornado5.1.1,使用supervisor统一管理服务

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_102 这一次使用vue.js+tornado的组合来部署前后端分离的web项目,vue.js不用说了,前端当红炸子鸡,泛用性非常广 ...

  5. 海纳百川无所不容,Win10环境下使用Docker容器式部署前后端分离项目Django+Vue.js

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_179 随着现代化产品研发的不断推进,我们会发现,几乎每个产品线都会包含功能各异的服务,而且服务与服务之间存在也会存在着错综复杂的依 ...

  6. docker+nginx+redis部署前后端分离项目!!!

    介绍本文用的经典的前后端分离开源项目.项目的拉取这些在另一篇博客!!! 其中所需要的前后端打包本篇就不做操作了!!不明白的去看另一篇博客!!! 地址:http://www.cnblogs.com/ps ...

  7. vue+uwsgi+nginx部署前后端分离项目

    前后端分离,vue前端提供静态页面,且可以向后台发起get,post等restful请求. django后台提供数据支撑,返回json数据,返回给vue,进行数据页面渲染 后端 创建虚拟环境 解决dj ...

  8. Linux、Debian、Jenkins、GIT、Nginx、码云安装,自动化部署前后端分离项目

    1.安装Jenkins i:下载Jenkins安装包(war文件):https://jenkins.io/download/ ii:这里采用Tomcat的war包方式安装,讲下载好的安装包放到Tomc ...

  9. Linux之部署前后端分离项目

    首先得看我前两个博客,把python3,虚拟环境,mariadb数据库,redis数据库,nginx安装好. 一.创建一个虚拟环境 1,创建虚拟环境 mkvirtualenv zijin #创建了一个 ...

随机推荐

  1. ubuntu 20.04 安装 vim8.2

    由于ubuntu 20.04自带的vim版本比较老了,有些新装的插件适配不上,所以需要安装最新版本的vim.在网上找了很久也没有比较官方的安装教程所以记录一下. 安装依赖库 sudo apt inst ...

  2. MySQL--用通配符进行过滤(LIKE操作符)

    1.LIKE操作符 怎样搜索产品名中包含文本anvil的所有产品?用简单的比较操作符肯定不行,必须使用通配符.利用通配符可创建比较特定数据的搜索模式.在这个例子中,如果你想找出名称包含anvil的所有 ...

  3. 【Python爬虫技巧】快速格式化请求头Request Headers

    你好,我是 @马哥python说 . 我们在写爬虫时,经常遇到这种问题,从目标网站把请求头复制下来,粘贴到爬虫代码里,需要一点一点修改格式,因为复制的是字符串string格式,请求头需要用字典dict ...

  4. 06 app分享功能

    通过某一个点击事件触发confirm弹窗 确定后正式进行分享功能处理 这是一个封装好的分享功能插件 https://ext.dcloud.net.cn/plugin?id=4860 如果自己写的话会很 ...

  5. c++小游戏———扫雷

    大家好,我是芝麻狐! 这是我自制的小游戏,目前仅支持devc++. 如果你没有c++软件, 请打开网站GDB online Debugger | Compiler - Code, Compile, R ...

  6. HTTP协议-工作原理及消息结构

    HTTP协议 HTTP协议是Hyper Test Transfer Protocol(超文本传输协议)的缩写 适用于从万维网(WWW:World Wide Web)服务器传输超文本到本地浏览器的传输协 ...

  7. Linux—文件系统结构

    1.文件目录结构 /:是Linux系统的根目录 /bin:存放用户经常使用的命令 /boot:启动加载程序的静态文件 /dev:设备文件目录,不能单独分区 /etc:系统配置文件目录 /home:普通 ...

  8. Java开发学习(十九)----AOP环绕通知案例之密码数据兼容处理

    一.需求分析 需求: 对百度网盘分享链接输入密码时尾部多输入的空格做兼容处理. 问题描述: 点击链接,会提示,请输入提取码,如下图所示 当我们从别人发给我们的内容中复制提取码的时候,有时候会多复制到一 ...

  9. WPF 截图控件之移除控件(九)「仿微信」

    WPF 截图控件之移除控件(九)「仿微信」 WPF 截图控件之移除控件(九)「仿微信」 作者:WPFDevelopersOrg 原文链接: https://github.com/WPFDevelope ...

  10. Python基础之数据类型和变量

    数据类型 ​ 计算机顾名思义就是可以做数学机器,可以处理各种数值,计算机还能处理文本.图形.音频.视频.网页等各种各样的数据,不同的数据是需要定义不同的数据类型的,在Python中,能够直接处理的数据 ...