在 K3s 搭建的 Kubernetes 集群中安装 Longhorn 存储解决方案

前两天我使用 k3s 搭建了一个实验性质的 Kubernetes 集群,k3s 默认的存储是 Rancher 的 Local Path Provisioner,可以让用户直接使用各个节点的本地存储来创建持久卷(PVC),无需配置外部存储系统。默认存储在每个节点的 /var/lib/rancher/k3s/storage 目录下。但是如果使用默认的存储,那么如果数据需要在多个节点中复制和迁移就会有一些问题,所以本文讲述一下如何在 k3s 集群中安装 [[Longhorn]] 这样一款轻量的分布式块存储系统。 K3s [[K3s]] 是由 Rancher Read more ...


K3s 中安装 cert-manager 发行 SSL 证书

cert-manager 作用类似于 certbot ,不过是运行在 Kubernetes 中的。cert-manager 是一个证书的自动化管理工具,可以在 k8s 集群中自动地颁发和管理各种来源,各种用途的数字证书。 我在 K3s 上面安装了不少的应用,所有的域名都是通过 Cloudflare 去进行代理的,因为浏览器当中从来没有报过证书的问题,我一直以为 K3S 的证书生成是没有问题的,直到今天去运行查询 cert-manager 的时候,发现并没有运行的 pod。 kubectl get pods -A | grep cert-manager Read more ...

2025-04-18 k3s , k8s , cert-manager , ssl , tls , cert-manager , kubectl , yaml

K3s 构建高可用 Kubernetes 集群

之前写过一篇文章介绍了如何使用 k3sup 来快速安装 k3s 集群,虽然之前已经走过一遍教程,但是实际上还是没有充分利用起来,这一次就从学习的角度再次从头开始利用 K3s 构建一个生产级别的 K8s 集群。 现在我有三台 Ubuntu 24 的 VPS,想要在其上,构建一个 k3s/rancher 的架构,并且在其中部署一个高可用服务,该服务有一个 MySQL 数据库,有一个 app service ,暴露 8080 端口,可以让用户通过域名来访问该服务,并且该服务能够水平扩展。 硬件和网络配置 假设三台机器 IP, master Read more ...


Claw Cloud Run 提供永久免费的服务器

Claw Cloud Run 是 Claw Cloud 旗下的,类似 Vercel,Netlify 的在线开发和部署平台,可以部署非常多 SaaS 程序,包括 [[AList]],[[Appsmith]],[[Bytebase]],[[ChatGPT-Next-Web]], frp,[[Dify]] 等等非常多的服务。 目前 Claw Cloud Run 只需要注册,并且绑定一个超过 180 的 GitHub 账户,就可以永久免费获得 5 美元的月额度。 在每个可用的区域可以最多使用 4vCPU,8GB 内存,10GB 硬盘,并提供 10GB Read more ...


Lenny's Newsletter 重磅福利:200 美元订阅换取 15000 美元 AI 工具包

昨天,科技圈被一则消息刷屏:Lenny’s Newsletter 推出了一项令人难以置信的优惠 - 只需支付 200 美元的年度订阅费,用户就能获得包括 Cursor Pro、V0、Bolt、Lovable、Notion Pro、Superhuman 和 Perplexity Pro 在内的多款顶级 AI 工具,总价值接近 15000 美元。这一举措迅速在互联网圈引发热议,许多人惊叹于这个”不可思议的交易”。 Lenny Rachitsky:从 Airbnb 产品负责人到顶级 Newsletter 作者 Lenny Rachitsky 是谁?在成为知 Read more ...


Flutter 中实现跳转到应用设置

iOS 16 开始,苹果引入了新的隐私政策,应用程序在访问 iPhone 粘贴板的时候,必须得到用户的许可,这个功能设计的初衷是为了保护用户的隐私,防止应用程序暗中读取从其他地方复制的内容。 在 iOS 16.1 之后,苹果在设置中添加了一个额外的「从其他应用程序粘贴」菜单,用户可以在「设置」-> 「应用名称」 -> 「从其他应用粘贴」进行设置,有三个选项 询问,应用必须继续请求用户允许从其他应用粘贴内容 拒绝,应用程序不能从其他应用程序粘贴内容 允许,应用程序可以从其他程序粘贴内容,无需再次请求 在我开发 Aki 日语 Read more ...

2025-04-13 flutter , dart , ios , paste , permission , privacy

Google Agent2Agent 协议

现如今,AI Agent 已经能够自主处理非常多重复和复杂的任务,并且越来越多的企业也正在构建和部署 AI Agent。就在刚刚过去的 Google Cloud Next 2025 大会上 Google 宣布了全新的 Agent2Agent (A2A)协议。这是一个开放的 AI Agent 协议,目的是为了建立 AI Agent 框架之间的联系,实现安全高效的协作。 什么是 AI Agent [[AI Agent]] 是一个能自主感知,并进行决策,执行任务的智能系统,核心是利用 AI,尤其是大语言模型 LLM,完成复杂任务,模仿人类的智能行为。 M Read more ...


HostHatch 私有网络配置记录

我一直有使用 HostHatch 的 VPS,这也是我人生中购买的第一台新加坡的服务器,HostHatch 的服务一直比较稳定,可惜的是到国内的网络不太行,延迟比较高。但好在 2 核 8G 内存,40 G 存储,两年只要 68 美元,所以也就又续费了。 但是在续费的过程中点开后台发现 HostHatch 更新了一个私有网络(Private Networking)的功能,根据官方的说法,需要在 VM 上开启私有网络,那么就可以获得一个额外的网络接口,可以通过该网络接口和同一个区域中的其他 VM 之间通信。但是无法通过此接口访问任何外部网络。 Priva Read more ...


Cursor Rules 为 AI 设限

我自己使用 Cursor 已经有一段时间了,Cursor 提供了非常好用的代码补全,以及代码生成功能,但是在使用的过程中难免也发现了一些问题,最近看到 Cursor 推出了这个 Cursor Rules,看到了官方尝试来解决一些问题,也正好以此契机来完整地介绍一下 Cursor Rule,给 AI 设定一些界限,规则,不让其过分地自由发挥以至于发生意想之外的错误。 什么是 Cursor Rules Cursor Rules 本质上是一个控制 AI 模型行为的指令,可以将其理解成 Cursor「系统级别的 Prompt」。通过这些前置的规则,可以更好地 Read more ...

2025-04-02 cursor , ai , claude , cursor-rules , ai-coding , editor

Flutter 教程系列一: freezed 使用

不管在什么样的应用中,如果要处理大量的数据,不可避免的就是要定义大量的数据类用来装载和解析数据,在 Flutter 中也不例外,今天要介绍的这个 Freezed 库就是 Flutter 中用来作为数据类(data classes)代码生成的这样一款工具。 freezed 是什么 freezed 是一个 Flutter/Dart 生态系统中一个非常强大的代码生成工具,用于创建数据类,基于 Dart 的代码生成功能,通过自动生成 data classes, tagged unions, nested classes 和 clone 代码模板,大大减少了手 Read more ...

2025-03-23 flutter , dart , freezed , model , lombok

最近文章

  • 我购买了一个 DJI Mic Mini 最近为了提升移动拍摄时的收音质量,我入手了 DJI Mic Mini。虽然大疆提供了带充电盒的套装,但我只购买了单机版本(发射器+接收器,2 TX 1 RX 版本),因为对于我日常的拍摄需求来说,本体的续航已经完全足够了。
  • Auto Claude:Vibe Kanban 的终极形态?让 AI 并行开发的“指挥中心”来了 在上一篇文章 《Vibe Kanban:当 AI 开始并行协作,我们的开发方式变了》 中,我分享了一种利用 [[Vibe Kanban]] 和 AI Agent 实现并行开发的工作流理念。我们可以利用 Vibe Kanban 来统一管理多个并行任务。
  • Vibe Kanban:当 AI 开始并行协作,我们的开发方式变了 在我之前的视频当中,我介绍过在 Claude Code 中使用子代理(Subagents)机制和 Git Worktree 来实现并行工作流。我们可以创建子代理来并行执行任务,但是 Subagents 的配置和使用都还需要我们在 Claude Code 中等待。那如果我们有完全独立的两个任务要执行呢,我们可以开两个 Claude Code 分别在两个 Claude Code 中提交任务,然后让 Claude Code 完成。此时我们依然会遇到一些问题,比如说两个 Claude Code 的代码可能产生冲突。并且如果我们有超过两个独立任务时,我们在管理 Claude Code 的成本就会指数级上升。
  • 终于还是入手了:Insta360 Go Ultra 初体验 每次想要拍摄,我得从口袋掏出手机,解锁,打开相机应用,切换到视频模式,然后举着它——这个过程在很多稍纵即逝的生活瞬间面前,显得太繁琐了。而且,当你举着手机拍摄时,你其实是在”观察”生活,而不是在”经历”生活。手机太”重”了,不是物理重量,而是心理负担。所以我想使用一个工具,可以帮我记录生活,但又不需要我刻意去”操作”它。于是,在观望了许久之后,我终于入手了这台 Insta360 Go Ultra。在 11.11 在天猫 2350 下单了 Insta360 Go Ultra,后来价格保护还退还了 260 块。
  • 奥卡姆剃刀:为何简单的往往就是最好的 最近我在整理我的 Obsidian 笔记库时,发现了一个有趣的现象。