懒猫微服故事篇(一):服务器宕机之后,我和前端靠懒猫微服结对编程

故事篇分享我和懒猫微服的方方面面,这里没有高深的技术,也没有过多的讲解。我始终坚信着技术是服务于生活,因为它能够给我们带来小确幸。更多的时候,我们追求技术,有时候为了兴趣,有时候为了心目中那小小的执念。慢慢在这个过程中会成为别人眼中的哆啦 A 梦。懒猫微服是一个百宝箱,我们能拿出千变万化的道具。事情会过去,但是感动和记忆会留下,我们可以随时追忆。

和前端同学约好晚上一起过一遍 API,主要是确认 Swagger 上的接口和字段设置。我事先把后端代码、API 和 Swagger 文档都部署在服务器上,让他先通过浏览器简单预览一遍,然后再开始写前端代码,这样能提前避免前后端格式对不上的问题。

准备开始之前,结果他突然说:‘你的 Swagger 打不开了。我登陆到管理控制台看了下,果然和之前部署 Dify 一样的问题,telnet 端口和 Ping 都正常,但是 SSH 和 Web 应用全都访问不了了。从基本监控俩看,CPU 和磁盘也没什么问题。大概率又是 OOM 了。

image-20250522074447237

DDL 赶在眼前,得赶紧让他连到我的服务器或者开发机才好。第一个想到的是端口转发,把服务映射到公网上去,一方面调试的时候属于明文传输,在互联网上很容易被监听,篡改报文。另一方面,家里的公网 IP 经常出问题,总有一阵子会封禁所有的端口,所以最后采取了异地组网的方式。

我和他说,我在我的 NAS 上给你开一个账户,然后你试试来访问我的 Macbook 上的服务。你去下载一个懒猫微服,下载地址是https://lazycat.cloud/download,然后扫描我给你的二维码,这样就可以访问我的NAS了。(回看这段感觉有点像电信诈骗哈哈,感谢前端同学的信任)

阅读更多

懒猫微服故事篇(二):西湖邂逅后,我手把手教她玩转NAS

去年与她相识于杭州,是在西湖的游船上。参加活动过后,我想在杭州逗留一天,看看被世人称为眼泪的西湖水。没做攻略,匆匆向前台要了手册,然后来到距离最近的码头。磨磨蹭蹭之后总算开船,隔着一堆大爷大妈看着看着她在拍照,也邀请我帮她拍照。于是找她要攻略,一起逛三潭映月,净慈寺,讨论雷峰塔的倒下。

因为苏堤,我们聊到东坡,美食以及宦海沉浮。聊到最爱的粤菜和川菜更是共同的爱好,去成都旅游的时候找他要了攻略,并且约定下次去她的城市旅游给我当导游。

image-20250608222101922

阅读更多

懒猫微服炫技篇(一):使用懒猫微服的穿透服务,车机使用DS music 远程听歌,黑群晖不用再洗

声明:炫技篇不是最佳实践,只是为了记录过程和那颗折腾的心。虽然很多时候可以用钱来升级或者多忍一忍就好了。但是折腾的心始终是不安分的,技术在职场中证明不了什么,但是在生活中可以。当晦涩的理论不仅仅存在于书本,才能给我们带来更大的价值。这个过程中能够找到我们到底是为了什么才需要这项技术,问题的痛点,以及这技术的前世今生。。。。。。

前些天给老旧的车载导航升级了 WIFI 功能,大致就是出厂的时候锁了 wifi 的驱动和 UI,然后通过 ADB 解锁的,然后通过路由器 Mesh 升级了老旧的 APP 以及导航数据,这次又带来了全新的功能,给普通车机升级 Carplay。

毕竟我的初衷,就是想在车机上安装懒猫 APP 而已啊。

Part 1:

下载懒猫微服 APK,通过 U 盘导入安装,报错:解析错误,解析软件包时出现问题。

于是和懒猫相关技术进行确认,很快 CEO 给到了答复,目前只支持比亚迪和华为。毕竟国产车嘛,路子野一点也正常。

那我如果不用安卓,换 Carplay 呢?是不是就能用 IOS 的客户端直接投过去了?

阅读更多

懒猫微服炫技篇(二):使用懒猫微服倒推停电时间

早晨的时候,突然听到饮水机和扫地机器人重启的声音,只有一种可能是电闸重启了。没有人为重启,那就是意外断电了。赶紧 SSH 登录到懒猫微服,第一时间查看 uptime,果然 3 分钟之前重启了。懒猫的 BIOS 有上电自启的功能,所以能够看到确实是停电了。

610a2721b7c9a4c5bcdc51a1960736b9

使用 uptime -s 显示系统最后一次启动的具体时间

阅读更多

懒猫商店如今已有 1000+ 应用,日常使用中经常要在搜索栏反复查找,着实有些不便。有没有更简单的方法呢?答案是:可以直接把网页保存成 Mac 应用,像手机 App 一样快捷打开!

下面就手把手教大家几种实用的方法。

优雅方案——PWA

在 Mac 上,我们有更高级的玩法。
不少现代网站都支持 PWA(Progressive Web App),简单来说,就是让网页像 App 一样运行:

  • 可以像应用一样安装在本地
  • 点击图标就能直接启动,无需打开浏览器
  • 界面简洁,没有多余的地址栏和标签页

下面是懒猫清单的安装效果:

懒猫清单 PWA 效果图

阅读更多

我用Amazon Q写了一个Docker客户端,并上架了懒猫微服商店

https://appstore.lazycat.cloud/#/shop/detail/xu.deploy.containly

自从被种草了 Amazon Q,我陆陆续续写了不少小软件,其中这个 Docker 客户端是一个典型的例子,比较符合自己平时使用的习惯,也分享给一些朋友和 NAS 爱好者来用。

image-20250606190108571

故事还要用上次折腾黑群晖说起,本意想把 NAS 和打印机共享二合一的,所以把闲着的软路由做了改装。顺便使用 Docker 跑一些服务,有老本行的 ES 集群,也有自己写的一些工具类型的服务。

阅读更多

深度长文:NAS大降价的年代,我为何接受溢价来购买懒猫微服(附送回本攻略)

最早知道懒猫微服,是去年的时候,那个时候最直观的感觉就是价格比同类型产品要贵一些,但是很极客风,不过硬件配置比传统 NAS 要高出很多。但在现在各种小主机盛行的年代,这台机器就显得性价比不高,甚至有些人认为有割韭菜的嫌疑。

今年朋友又过来推荐,说是售后很好,可以根据自己的需求来答疑,比如把三方监控放在存在 NAS 里,比如想用私服搭建游戏服务器等等,而网上不管怎么样,还有说情绪价值一定给拉满的。

最早的技术答疑,咨询上架应用

第一次咨询的时候,是和 CEO 通了个电话,抱着将新将疑的态度购买回来,拆箱,测评。相信其实很多人即使没听过王勇,也一定听过或者用过 Deepin。大学的时候使用过一段时间的 deepin,很多细节确实符合国人的使用习惯。这个背书对于技术人来说,实在是一下子路转粉。想想自己在电话里还跟对方说,其实专业的技术人员,不用和我说这么直白的词,再想想王总在 Deepin 以及 Emacs 方面的贡献, 实在是有些惭愧。

阅读更多

自带内网穿透,懒猫微服治好了我的NAS焦虑

知道懒猫微服是一两年前,最初的印象是极客机甲风格,有颜值有性能有。近期入手也是出于朋友推荐,主要还是喜欢自带的内网穿透功能,虽然家里有公网 IP,但是不定时会被运营商封端口(不止常用端口),总是一阵一阵的,询问运营商也没有一个明确的结论,倒不如选一个商业的产品然后省去自己折腾的时间吧

虽然我一直很想 DIY 这样一款产品,开源的大多是 KVM-base 的方案,或者还有商业的 EXSI。毕竟个人精力有限,一直搁置到现在,然后随着事情越来越多,就购买了一台来玩玩,也脱胎换骨当甲方提需求。官网如下:https://lazycat.cloud/

image-20250504201210064

机器是这样的,浓浓的机甲风格连,着运行了几天也一点都不烫。之前还担心炒豆子的问题,其实相对于白天的噪音几乎是没有的。

阅读更多

懒猫微服进阶心得(一):M芯片移植懒猫应用构建Docker镜像的常见问题排查及解决方案

本文是使用 Apple silicon 的 MacOS 移植到懒猫商店的踩坑记录,希望能够给大家带来帮助

Apple silicon 很好,在这年几乎带起来 ARM 的生态。但这也拉开了 ARM 和 X86 之战,用户在两大生态中穿梭,只能增加自己应用的兼容性。就比如说用来打包的 Docker image,尽管编程语言和操作系统都在底层屏蔽了硬件架构,但是容器还得用相同架构的。

这是之前移植开源项目时候忘记打包不同架构的 image 而直接推送到懒猫镜像仓库导致的问题。MacOS 默认打包了 ARMv8 架构的镜像,在 X86 上也无法运行。

1
2
pg-docker run -p 5000:5500 registry.lazycat.cloud/u04123229/you/doudizhu-scorer:d1d9085174c0bf8c
WARNING: The requested image's platform (linux/arm64/v8) does not match the detected host platform (linux/amd64/v4) and no specific platform was requested
阅读更多

懒猫微服进阶心得(十):本地开发,如何接入懒猫微服的 OpenID Connect (OIDC)

我们知道懒猫的 OpenID Connect (OIDC) 无需在后台申请,商店里的应用在运行的时候会自动申请,但是本地测试的时候就不太方便。

一般是需要用其他的 IDP 作为测试环境,因为 OIDC 的协议是通用的,不像 OAuth 这么百花齐放。

以我的“家庭任务通知”APP 为例,讲解下在开发模式下接入懒猫微服的 OpenID Connect (OIDC)。


添加 OIDC 登录逻辑

首先前端需要有一个 OIDC 的登录按钮,然后做好 OIDC 的逻辑:

image-20250626104429835


使用懒猫 ENV 查看器导出本地配置

从应用商店安装我写的“懒猫 ENV 查看器”,导出 env.example 文件,导出项目之后重命名为 .env。这样就可以把商店里的 ENV 复制到本地的开发环境。

不过需要注意的是:应用名字和回调函数还是原来的,不要轻易去改。遇到问题再手动调试。

https://appstore.lazycat.cloud/#/shop/detail/xu.deploy.env

阅读更多