自动化运维工具 Puppet 介绍

Puppet 是一个开源的强大的基础设施配置管理工具,很早之前我介绍过一款 Python 编写的开源的自动化运维工具 Ansible,后面陆陆续续还分享过如何使用 Ansible 去管理 Contab,如何使用 Roles 来结构化并管理大量的 Ansible 配置。而今天要介绍的 Puppet 是另外一款运维自动化工具,被广泛用于自动化管理多个服务器配置。 相较于基于任务的 Ansible,Puppet 使用一种声明式描述语言,可以用来构建更复杂,更庞大的基础设施。 Puppet 使用客户端/服务器架构,使用 Master 和 Agent 架 Read more ...

2025-03-15 puppet , devops , ansible , terraform , linux

Gemini 2 的原生多模态图片生成

Google 今天发布了 Gemini 2.0 Flash 的多模态图像生成功能。 功能 文本到图像 生成一张东京塔和烟花的图像 文本到图像和文本 生成一份西班牙海鲜饭的图解食谱 文本和图像到文本和图像 带有一个装修房间的图像,什么颜色的沙发适合房间,更新图片 图片编辑 编辑图片,使其看上去更像日式卡通 猫的图像,枕头的图像,在这个枕头上创建猫的十字绣 Bilibil Read more ...


Helm 使用

Helm 是 [[Kubernetes]] 的一个包管理工具,用来简化 Kubernetes 应用的部署和管理。 通过使用使用 Helm 可以管理 Kubernetes manifest files、管理 Helm 安装包 Charts、基于 Chart 的 Kubernetes 应用分发。 Helm Chart 是用来封装 Kubernetes 原生应用程序的 YAML 文件。 Installation macOS 下安装 Helm brew install helm Linux 下安装 Helm curl https://baltoc Read more ...

2025-03-11 helm , kuberntes , k8s , rancher , k3s , cluster

K8s 部署 TiDB

TiDB 是由 PingCAP 开发的一款开源分布式 SQL 数据库,支持事务处理和实时分析。它与 Kubernetes 的结合使得数据库能够实现云原生化,具备弹性扩展、自动故障转移等特性。 TiDB 是一个分布式数据库系统,具有以下特点: HTAP 支持:同时支持事务处理(OLTP)和分析处理(OLAP)。 高可用性:通过 Raft 协议实现数据强一致性和容错。 云原生架构:适配 Kubernetes,支持自动化管理和弹性扩展。 MySQL 兼容:支持 MySQL 协议,易于迁移现有应用。 TiDB 的核心组件包括: Read more ...

2025-03-10 tidb , mysql , k8s , kubernetes

开源跨平台终端 XPipe

XPipe 是一款开源的跨平台终端应用,支持 SSH,Docker,还支持 Kubernetes 等多种环境。 功能 支持 SSH 连接,配置文件 Docker,Podman,LXD,incus 容器 Proxmox VE Hyper-V, KVM, VMware Player/Workstation/Fusion 虚拟机 Kubernetes 集群,pods,容器 Tailscale 和 Teleport 连接 Windows Subsystem for Linux,Cygwin,和 MSYS2 Powersh Read more ...

2025-03-06 xpipe , terminal , docker , ssh , proxmox , proxmox-ve , fusion

开源 Kotlin ORM 框架 Exposed 使用说明

Exposed 是 [[JetBrains]] 在数年前推出的轻量级 [[ORM]] 框架,Kotlin 编写,已经在 JetBrains 内部多个关键产品使用。 Exposed 是基于 JDBC 实现,屏蔽了底层建立数据库连接,编写 SQL,操作数据,关闭数据库连接的操作,只需要关心数据操作。 Exposed 提供了两种形式 API,面向 DSL 的 API 和面向对象的 API。如果想要使用轻量级的 ORM 可以使用 DAO 模式,如果想要使用类型安全的 SQL,推荐使用 DSL。1 特点 纯 Kotlin 实现,轻量级,模块化 类 Read more ...

2025-03-04 open-source , kotlin , java , orm , spring , spring-boot

Open WebUI 基于网页的大语言交互界面及联网搜索配置

之前的视频也介绍过,ChatWise,Cherry Studio,Chatbox 等大语言模型调用的本地客户端,虽然这些客户端都还是跨平台的,但是总还是需要占用本地的空间,今天我就来介绍一款基于网页的 LLM 交互客户端 Open WebUI,以及再介绍一下如何配置 Open WebUI 让其支持联网搜索。 Open WebUI 是什么 Open WebUI 是一个功能丰富,用户友好的自托管大语言模型 Web 交互界面。Open WebUI 提供了一个类似 ChatGPT 的界面,但是允许用户与这种类型的 AI 交互 完全离线 本地环境可 Read more ...

2025-03-03 open-webui , llm , openai , chatgpt , open-source , ollama , rag

多版本管理工具 mise 使用详解

我用了很多年的 asdf 作为管理各种语言版本的工具,但是最近一次更新,asdf 多了一些变化,我也写了一篇文章介绍怎么升级的。在文章下方有小伙伴(lonelyhentxi) 给我推荐了 mise 这样一款使用 Rust 编写的多版本管理工具 mise,我大致的看了一下 mise,觉得是一个非常不错的项目,在这里再次感谢。 所以今天我就来介绍一下 mise,替换 mise 倒不是因为 asdf 不能用了,而是 Rust 在执行效率上确实要更快一些,比如我之前介绍的 Meilisearch,espanso 等等都是因为 Rust 编写,效率上都有所提升。 Read more ...


搭建 Joplin 同步服务器

在我的博客上很久之前我介绍过 Joplin,不过我自己只在 Linux,Android 上用过一段时间,后来出现了 Obsidian ,就切换到 Obsidian 了,但是最近看到一篇文章介绍了如何自建一个 Joplin 同步服务器,这样就可以直接无缝地进行同步数据了。之前 Joplin 只是开放了 [[WebDAV]] 协议的访问协议用可以用来同步。 介于由于部分小伙伴嫌弃 Obsidian 闭源,那不妨试试这一款完全开源的 Joplin。 什么是 Joplin Joplin 是一个开源的笔记,以及 Todo 管理应用,可以在 Windows,m Read more ...


Java 程序员视角的 Kotlin 语法区别

Kotlin 和 Java 作为 JVM 生态中两大主流编程语言,在语法特性、开发效率和适用场景上存在显著差异。Kotlin 凭借现代化设计解决了 Java 的许多痛点,而 Java 凭借成熟生态和广泛支持仍是企业级开发的主力。最近有一些项目想要使用 Kotlin 实现,所以本文正好来总结一下从 Java 程序员转到 Kotlin 程序员需要注意的一些语言细节。 Java 转换到 Kotlin Kotlin 采用极简语法设计,相比 Java 减少了大量样板代码量 无需分号结束语句 支持类型推断,智能转换 equals, hashCod Read more ...

2025-03-01 java , kotlin , programming-language , jvm , dart

最近文章

  • Google Code Wiki:让 GitHub 仓库秒变代码百科全书 之前 Devin 团队推出了一款 DeepWiki 的网站,可以用来解释 GitHub 的代码仓库。今天偶然发现 Google 也推出了类似的产品,叫做 Code Wiki。
  • Typeless: 又一款 macOS 上的 AI 语音输入利器 看过我博客的人会发现,我在这半年的时间里面体验了非常多的语音转文字工具,可以说,这样的工具极大地提升了我的生产效率。不仅搭配 Obsidian 可以更快地写笔记,搭配 Claude Code 等编程工具也可以让我更快地输入提示词。体验到后面,遇到类似的产品,我一般也不会单独地出一篇文章,但是今天体验完了 Typeless,我觉得它值得写一篇文章,单独介绍一下。
  • Gemini CLI 使用小技巧 本文记录 Gemini CLI 使用过程中一些容易被忽略的问题,以及使用小技巧。
  • 让 AI 更懂你的工作流:Gemini CLI 自定义 Slash Commands 配置指南 看过我博客的人会发现,我过去分享了非常多 Claude Code 下的使用小技巧,Claude Code 提供了非常好用的 Clash Commands,可以让我们直接通过快捷方式调用我们预先定义好的 prompt。最近我在使用 Gemini CLI 时,也发现我需要类似的功能。但幸好,Gemini CLI 已经帮我们实现了 slash commands,我们只需要定义好一个函数,就可以非常轻松地通过斜杠命令来调用。
  • 在 Obsidian 中使用 Gemini CLI 从 2020 年开始使用 Obsidian 算起,到今天也已经快 5 年了,这个过程中我将过去将近 10 年的笔记,包括 Evernote,WizNote 中的笔记,豆瓣上的笔记全部转成了 Markdown 保存到了本地,后来陆陆续续使用的比如 [[Voicenotes]] 也都转成 Markdown 存如 Obsidian。虽然过去纪念陆陆续续在整理,但是实际上每天添加到笔记库中的内容要远多于要整理阅读的内容,笔记仓库也是越来越大,所以我越来越想使用一个工具可以帮助我真正地理解我写下的东西,并且在我想使用的时候能快速的找回。