懒猫微服开发篇(八):反向代理与自签名 SSL 的优雅共存之道
在分布式系统中,HTTPS 是默认的通信规范。但当你在内部环境中部署服务时,特别是很多以容器方式运行的组件,但是很多时候
它们往往只默认开启了 HTTPS 接口,却附带了一个 自签名证书(Self-signed certificate)。
这意味着,只要一层反向代理(reverse proxy)去转发 HTTPS 请求,TLS 校验就会报错。
这不是配置错误,而是 SSL 的“安全特性”在起作用。
懒猫微服开发篇(八):反向代理与自签名 SSL 的优雅共存之道
在分布式系统中,HTTPS 是默认的通信规范。但当你在内部环境中部署服务时,特别是很多以容器方式运行的组件,但是很多时候
它们往往只默认开启了 HTTPS 接口,却附带了一个 自签名证书(Self-signed certificate)。
这意味着,只要一层反向代理(reverse proxy)去转发 HTTPS 请求,TLS 校验就会报错。
这不是配置错误,而是 SSL 的“安全特性”在起作用。
懒猫微服开发篇(七): 解析 Docker Compose Override
看过很多的 Docker 教程,也都不曾提到过 compose override,第一次接触到这个是在懒猫微服上解开 LPK 看到的,用来注入 docker 引擎的环境变量。但是还以为是懒猫微服的小技巧,今天整理笔记才发现原来的 Docker compose 用来做多环境部署的配置文件,比如用来给开发和生产分别注入不同的环境变量和配置文件。
懒猫微服开发篇(四):懒猫微服如何使用 OpenID Connect (OIDC)?(上)
OpenID Connect(OIDC)是一个基于 OAuth 2.0 的身份认证协议,允许用户使用一个账号(如 Google、微信、Microsoft 账号)登录多个不同的网站或应用,而无需重复注册。我们经常把他和OAuth 2.0 混为一谈。
它主要用于 身份认证(Authentication),而 OAuth 2.0 主要用于 授权(Authorization)。简单来说:
下面以我的懒猫 ENV 查看器为例,来讲解这个登录流程。
当你在应用处点击登录就会重定向到登录中心,我们通常管这个叫做身份提供商(IDP),如果是其他的软件有可能是 “使用 Google 登录” 或 “微信登录” 。
懒猫微服开发篇(三):如何将已有 Docker Compose 应用移植到懒猫微服
本文延续前两篇,演示如何把一个已经在本地运行良好的 Docker Compose 应用打包并上架到懒猫微服应用商店。以 Milvus 为例,逐步拆解 Manifest 配置、路由映射、数据卷绑定以及镜像加速等关键环节,帮助大家快速完成移植。
在懒猫微服中,一个最小可用的应用包仅需两个文件:
| 文件 | 作用 |
|---|---|
lzc-build.yml |
描述打包流程及应用图标。简单应用只需指定 icon 即可。 |
lzc-manifest.yml |
定义应用元数据与服务编排,是移植的重点。 |
本文主要关注 lzc-manifest.yml 的编写。
lzc-manifest.yml 字段逐一解析现在有了懒猫应用查看器很方便,我们以商店里的 Milvus 的示例 Manifest 为例,并附带注释说明。
我们上一篇讲述了如何打包上架 APP,这期我们就来看如何远程调试即将上架的 APP。
简单来讲,这个 devshell 其实就是在微服上打开了一个虚拟机环境,然后我们可以进去里面测试我们的命令。非要说技术实现,那就是 docker exec 了。只不过是做成了本地和微服之间同步的样子。
输入微服的名字/v2/_catalog,可以看到微服里面 Docker 仓库存放的镜像,debug.bridge 开头的就是 devshell 的 image。
1 | { |
在 lzc-build.yml 里定义了 devshell 的配置,这个的意思是就是安装 node 和 python 的环境,设置国内源,然后讲根目录转发到 5173,这个是 vue 的端口。所以我们可以推断,这个是一个 Vue+python 的全栈项目,所以我们可以开两个终端来进入 devshell,分别调试前后端。
懒猫微服开发篇(五):懒猫微服如何使用 OpenID Connect (OIDC)?(下)
先决条件:
需要在lzc-manifest.yml定义 oidc_redirect_path 和 environment。
lzc-manifest.ymloidc_redirect_path 就是你的应用的回调地址,只有写了这个之后才能正确使用 OpenID Connect 的环境变量。
回调地址是按照应用而定的,有的是/callback,/oidc/callback 或者/oauth/callback。
懒猫微服开发篇(六):用 Openresty 做反向代理来解决跨域问题
对于 Web 开发而言, 经常会遇到跨域问题。我们先来看一下什么是跨域问题:
跨域问题(Cross-Origin)本质上是浏览器的同源策略(Same-Origin Policy, SOP)在发挥作用:
同源指“协议 + 域名(或 IP)+ 端口”三要素完全一致。只要三者有任何一个不同,就被视为跨域。
同源策略只在浏览器环境生效;后端服务之间(如服务器 A 请求服务器 B)并没有 SOP 的限制。
懒猫微服开发篇(一):懒猫微服全栈上架指南,一步打包,一键发布
懒猫应用离不开社区的力量,有了各位社区贡献者的支持让懒猫商店的应用越来越丰富。下面示范如何把自己的全栈应用上架到懒猫微服。
官网给出的示例里只有 3 个必备文件:lzc-build.yml、lzc-icon.png、lzc-manifest.yml。

lzc-icon.png**:应用图标,必须为 PNG。lzc-build.yml**:定义打包脚本、输出路径与图标路径。lzc-manifest.yml**:应用清单,描述路由规则等。懒猫微服的可玩性在于可以让开发人员放开手脚来做一些事情,等于是提供了一个可靠的基础设施。那么理所当然我们可以把开源的知识应用到上面,比如开发或者移植应用,或者干脆部署一些好玩的东西。这在传统 NAS 上实现起来很困难,甚至都没有包管理工具。
我们看一看开发懒猫应用,需要什么样的知识?
那么,开发懒猫微服的应用需要掌握哪些技能呢?
懒猫微服的 CLI 本质上是一个通过 NPM 全局安装的工具包,因此掌握一些基本的 NPM 使用方法是必要的。
1 | npm install -g @lazycatcloud/lzc-cli |
Update your browser to view this website correctly.&npsb;Update my browser now